(Nginx之Linux环境与Windows环境下的安装与使用)
Nginx概述
Nginx (engine x) 是一个高性能的Web服务器和反向代理服务器
Nginx 特点是占有内存少,并发处理能力强,以高性能、低系统资源消耗而闻名,Nginx官方测试为5万并发请求。
官方网站 :http://nginx.org/
Linux环境下的搭建与使用
1.下载、安装
下载nginx
wget http://nginx.org/download/nginx-1.18.0.tar.gz
[root@administrator ~]# wget http://nginx.org/download/nginx-1.18.0.tar.gz
--2021-03-02 11:39:48-- http://nginx.org/download/nginx-1.18.0.tar.gz
Resolving nginx.org (nginx.org)... 3.125.197.172, 52.58.199.22, 2a05:d014:edb:5704::6, ...
Connecting to nginx.org (nginx.org)|3.125.197.172|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1039530 (1015K) [application/octet-stream]
Saving to: ‘nginx-1.18.0.tar.gz’
100%[==================================================================================================================================================================================================================================>] 1,039,530 274KB/s in 3.7s
2021-03-02 11:39:52 (274 KB/s) - ‘nginx-1.18.0.tar.gz’ saved [1039530/1039530]
[root@administrator ~]#
安装前的准备
Nginx的安装需要确定Linux安装相关的几个库,否则配置和编译会出现错误
1.gcc编译器是否安装
检查是否安装:yum list installed | grep gcc
执行安装:yum install gcc -y
2.openssl库是否安装
检查是否安装:yum list installed | grep openssl
执行安装:yum install openssl openssl-devel -y
3.pcre库是否安装
检查是否安装:yum list installed | grep pcre
执行安装:yum install pcre pcre-devel -y
4.zlib库是否安装
检查是否安装:yum list installed | grep zlib
执行安装:yum install zlib zlib-devel -y
5.一次性安装,执行如下命令
yum install gcc openssl openssl-devel pcre pcre-devel zlib zlib-devel -y
开始安装
1. 解压下载下来的nginx文件,执行命令:tar -zxvf nginx-1.18.0.tar.gz
2. 切换至解压后的nginx主目录,执行命令:cd nginx-1.18.0
3. 在nginx主目录nginx-1.18.0下执行命令:./configure --prefix=/usr/local/nginx
4. 其中--prefix是指定nginx安装路径) 注意:等号左右不要有空格
5. 执行命令进行编译:make
6. 执行命令进行安装:make install
安装成功后,切换到/usr/local/nginx目录下,查看内容
[root@administrator nginx-1.18.0]# cd /usr/local/nginx/
[root@administrator nginx]# ll
total 16
drwxr-xr-x 2 root root 4096 Mar 2 13:53 conf
drwxr-xr-x 2 root root 4096 Mar 2 13:53 html
drwxr-xr-x 2 root root 4096 Mar 2 13:53 logs
drwxr-xr-x 2 root root 4096 Mar 2 13:53 sbin
[root@administrator nginx]#
2.启动
普通启动
切换到nginx安装目录的sbin目录下,执行:./nginx
[root@administrator nginx]# cd sbin/
[root@administrator sbin]# ll
total 3764
-rwxr-xr-x 1 root root 3851552 Mar 2 13:53 nginx
[root@administrator sbin]# ./nginx
[root@administrator sbin]#
配置文件启动
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
-c:指定配置文件(必须指定绝对路径)
[root@administrator ~]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
[root@administrator ~]#
3.关闭
关闭方式1
找出nginx的进程号:ps -ef | grep nginx
执行命令:kill -QUIT 主pid
这种关闭方式会处理完请求后再关闭
等同于使用命令:./nginx -s quit
[root@administrator sbin]# ps -ef | grep nginx
root 3903 1 0 14:09 ? 00:00:00 nginx: master process ./nginx
nobody 3904 3903 0 14:09 ? 00:00:00 nginx: worker process
root 3906 1177 0 14:09 pts/0 00:00:00 grep --color=auto nginx
[root@administrator sbin]# kill -QUIT 3903
[root@administrator sbin]#
关闭方式2
找出nginx的进程号:ps -ef | grep nginx
执行命令: kill -TERM 主pid
这种关闭方式不管请求是否处理完成,直接关闭,比较暴力
等同于使用命令:./nginx -s stop
4.重启与停止
重启Nginx
./nginx -s reload
停止Nginx
./nginx -s stop
5.其他命令
查看进程
ps -ef | grep nginx
[root@administrator sbin]# ps -ef | grep nginx
root 3801 1 0 13:56 ? 00:00:00 nginx: master process ./nginx
nobody 3802 3801 0 13:56 ? 00:00:00 nginx: worker process
root 3822 1177 0 13:59 pts/0 00:00:00 grep --color=auto nginx
[root@administrator sbin]#
nginx体系结构由master进程和其worker进程组成。主进程:master process,子进程:worker process
master 进程读取配置文件,并维护 worker 进程,而 worker 进程则对请求进行实际处理
Nginx启动后,安装目录下会出现一些_tmp结尾的文件的临时文件
worker process进程数量可在nginx.conf配置文件中的 worker_process 1 指定
[root@administrator nginx]# pwd
/usr/local/nginx
[root@administrator nginx]# ll
total 36
drwx------ 2 nobody root 4096 Mar 2 13:56 client_body_temp
drwxr-xr-x 2 root root 4096 Mar 2 13:53 conf
drwx------ 2 nobody root 4096 Mar 2 13:56 fastcgi_temp
drwxr-xr-x 2 root root 4096 Mar 2 13:53 html
drwxr-xr-x 2 root root 4096 Mar 2 14:00 logs
drwx------ 2 nobody root 4096 Mar 2 13:56 proxy_temp
drwxr-xr-x 2 root root 4096 Mar 2 13:53 sbin
drwx------ 2 nobody root 4096 Mar 2 13:56 scgi_temp
drwx------ 2 nobody root 4096 Mar 2 13:56 uwsgi_temp
[root@administrator nginx]#
配置检查
当修改Nginx配置文件后,可以使用Nginx命令进行配置文件语法检查,用于检查Nginx配置文件是否正确
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf -t
[root@administrator ~]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@administrator ~]#
版本查看
Linux上查看nginx版本:/usr/local/nginx/sbin/nginx -V
-v (小写的v)显示 nginx 的版本
-V (大写的V)显示 nginx 的版本、编译器版本和配置参数
[root@administrator ~]# /usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.18.0
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC)
configure arguments: --prefix=/usr/local/nginx
[root@administrator ~]# /usr/local/nginx/sbin/nginx -v
nginx version: nginx/1.18.0
[root@administrator ~]#
帮助命令
./nginx -? or ./nginx -h
Window环境下的搭建与使用
1.下载、安装
官方网站下载windows版的nginx:http://nginx.org/en/download.html
2.解压
将nginx压缩包解压到某一目录下,解压后该软件就可以启动使用了
3.启动
启动方式1:双击解压目录下的nginx.exe文件即可运行nginx;
启动方式2:进入dos窗口,切换到nginx主目录下,在dos窗口执行命令:start nginx
4.关闭
关闭方式1:在资源管理器杀掉Nginx进程(有两个进程)
关闭方式2:在dos窗口切换到Nginx安装主目录下执行命令:nginx -s stop