centos7 下安装 nginx-1.12.2

来源:互联网 发布:认字软件哪个好 编辑:程序博客网 时间:2024/05/23 01:12

1.环境:
centos7
nginx: nginx-1.12.2.tar.gz

2.下载nginx:

wget http://nginx.org/download/nginx-1.12.2.tar.gz

3.解压安装包

tar zxvf nginx-1.12.2.tar.gz

4.配置安装路径,cd nginx-1.12.2下

 ./configure --prefix=/usr/local/nginx

提示缺少包,要安装pcre ,pcre-devel,zlib,zlib-devel,那依次安装

yum install pcreyum install pcre-develyum install zlibyum install zlib-devel

5. 编译

make & make install

6.启动Nginx,切换到/usr/local/nginx 下

看到如下4个目录
./
….conf 配置文件
… html 网页文件
…logs 日志文件
…sbin 主要二进制程序

./sbin/nginx

7. 查看启动的进程和端口

[root@localhost nginx]# ps -ef|grep nginxroot      16050      1  0 00:44 ?        00:00:00 nginx: master process ./sbin/nginxnobody    16051  16050  0 00:44 ?        00:00:00 nginx: worker processroot      16063   6097  0 00:44 pts/1    00:00:00 grep --color=auto nginx[root@localhost nginx]# netstat -tnlpActive Internet connections (only servers)Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    tcp        0      0 127.0.0.1:6379          0.0.0.0:*               LISTEN      1352/redis-server 1 tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      16050/nginx: master tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      2479/dnsmasq        tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1142/sshd           tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      1148/cupsd          tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      2321/master         tcp6       0      0 :::22                   :::*                    LISTEN      1142/sshd           tcp6       0      0 ::1:631                 :::*                    LISTEN      1148/cupsd          tcp6       0      0 :::8888                 :::*                    LISTEN      2648/java           tcp6       0      0 ::1:25                  :::*                    LISTEN      2321/master       

8.如有进程点用了80端口,可以杀掉占用的进程

netstat -ant kill -9 pid

9.信号控制 停止或启动nginx

[root@localhost nginx]# ps aux|grep nginxroot      16050  0.0  0.0  20484   612 ?        Ss   00:44   0:00 nginx: master process ./sbin/nginxnobody    16051  0.0  0.1  23012  1380 ?        S    00:44   0:00 nginx: worker processroot      17288  0.0  0.0 112648   948 pts/1    S+   01:04   0:00 grep --color=auto nginx[root@localhost nginx]# kill -INT 16050[root@localhost nginx]# ps aux|grep nginxroot      17477  0.0  0.0 112648   948 pts/1    S+   01:07   0:00 grep --color=auto nginx[root@localhost nginx]# ./sbin/nginx [root@localhost nginx]# ps aux|grep nginxroot      17495  0.0  0.0  20484   616 ?        Ss   01:08   0:00 nginx: master process ./sbin/nginxnobody    17496  0.0  0.1  23012  1384 ?        S    01:08   0:00 nginx: worker processroot      17500  0.0  0.0 112648   948 pts/1    S+   01:08   0:00 grep --color=auto nginx
vim ./conf/nginx.conf

这里写图片描述

这里写图片描述

访问nginx首页

curl http://localhost 

也可以在浏览中输入 http://ip_address 进行访问

10.HUP 优雅的重启读取配置文件

kill -HUP 16050  ( nginx master pid)
  1. 也可以用其他的命令
[root@localhost nginx]# ./sbin/nginx -hnginx version: nginx/1.12.2Usage: nginx [-?hvVtTq] [-s signal] [-c filename] [-p prefix] [-g directives]Options:  -?,-h         : this help  -v            : show version and exit  -V            : show version and configure options then exit  -t            : test configuration and exit  -T            : test configuration, dump it and exit  -q            : suppress non-error messages during configuration testing  -s signal     : send signal to a master process: stop, quit, reopen, reload  -p prefix     : set prefix path (default: /usr/local/nginx/)  -c filename   : set configuration file (default: conf/nginx.conf)  -g directives : set global directives out of configuration file
./sbin/nginx -s reload  相当于 kill -HUP 'cat ./logs/nginx.pid'./sbin/nginx -s stop  ./sbin/nginx -s quit ./sbin/nginx -s reopen 相当于 kill -USR1 'cat ./logs/nginx.pid'

11.测试配置文件是配置正确

[root@localhost nginx]# ./sbin/nginx  -tnginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is oknginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful[root@localhost nginx]#