Nginx依赖:
1、安装:gcc gcc-c++编译器
1
2
|
yum
install
-y gcc
yum
install
-y gcc-c++
|
2、安装:pcre pcre-devel库
1
|
yum
install
-y pcre pcre-devel
|
3、安装:zlib zlib-devel库
1
|
yum
install
-y zlib zlib-devel
|
4、安装:OpenSSL库
1
|
yum
install
-y openssl openssl-devel
|
安装nginx:
1、获取nginx源码:进入http://nginx.org/en/download.html,选择相应的版本,复制其下载的url,这里已目前的稳定版1.8.1为例
1
2
3
4
|
#下载相应的文件夹
wget http:
//nginx
.org
/download/nginx-1
.8.1.
tar
.gz
#解压
tar
-zxvf nginx-1.8.1.
tar
.gz
|
2、默认编译安装Nginx
1
2
3
|
.
/configure
make
make
install
|
3、自定义安装
./configure的命令参数: 可通过./configure --help查看
nginx默认安装路径是 /usr/local/nginx/
可执行文件为 /usr/local/nginx/sbin/nginx
默认配置文件为 /usr/local/nginx/conf/nginx.conf
Nginx的命令行控制:
1、默认方式启动:直接执行Nginx二进制程序
1
|
/usr/local/nginx/sbin/nginx
|
2、指定配置文件启动:
1
|
/usr/local/nginx/sbin/nginx
-c .......
/nginx
.conf
|
3、指定全局配置项的启动方式:通过-g参数临时指定新的全局配置项,覆盖配置文件的配置项
1
|
/usr/local/nginx/sbin/nginx
-g
"pid /var/nginx/test.pid"
|
注:pid配置项 指明了正在运行的nginx的进程id
4、在不启动nginx的情况下,使用-t参数仅检测配置文件是否有错误
1
|
/usr/local/nginx/sbin/nginx
-t
|
5、在测试阶段不输出error级别一下的信息
1
|
/usr/local/nginx/sbin/nginx
-t -q
|
6、显示版本信息
1
|
/usr/local/nginx/sbin/nginx
-
v
|
7、显示编译阶段的参数以及版本信息
1
|
/usr/local/nginx/sbin/nginx
-V
|
8、快速停止服务
1
|
/usr/local/nginx/sbin/nginx
-s stop
|
-s参数告诉nginx程序向正在运行的Nginx服务发送TERM信号量
也可以通过kill命令达到同样的效果
1
2
3
4
|
#先通过ps命令查看nginx master的进程id
ps
-ef |
grep
nginx
#然后通过kill给进程发送信号量
kill
-s SIGTERM(或SIGINT) nginx主线程
id
|
9、从容停止服务:当希望nginx服务处理完当前所有请求再停止服务
1
2
3
|
/usr/local/nginx/sbin/nginx
-s quit
#或
kill
-s SIGQUIT <nginx master worker pid>
|
10、使运行中的Nginx重新读取配置文件
1
2
3
|
/usr/local/nginx/sbin/nginx
-s reload
#或
kill
-s SIGHUP <nginx master pid>
|
10、分割日志文件:从新打开日志文件,先将日志拷贝到其他目录备份,再重新打开
1
2
3
|
/usr/local/nginx/sbin/nginx
-s reopen
#或
kill
-s SIGUSR1 <nginx master pid>
|
11、平滑升级Nginx:当Nginx服务器升级到新的版本,需要将旧的二进制文件Nginx替换掉,并重启服务,Nginx支持平滑升级
1
2
3
4
5
6
|
#第一步:通知正在运行的旧版本Nginx准备升级,此时nginx.pid会重命名为nginx.pid.oldbin
kill
-s SIGUSR2 <nginx master pid>
#第二步:启动新版本Nginx
/usr/local/nginx/sbin/nginx
#第三步:从容停止旧版本nginx
kill
-s SIGQUIT <nginx master oldpid>
|