原文出自:http://www.cnblogs.com/comexchan/p/5815753.html
Linux(CentOS6.5)下编译安装Nginx1.10.1
首先在特权账号(root)下安装编译时依赖项:
yum install gcc gcc-c++ perl -y
首先以非特权账号(本文以账号comex为例)登陆OS:
进入data目录下载相关安装介质
mkdir /comexData/package cd /comexData/package wget http://nginx.org/download/nginx-1.10.1.tar.gz wget http://120.52.73.43/jaist.dl.sourceforge.net/project/pcre/pcre/8.38/pcre-8.38.tar.gz wget https://www.openssl.org/source/openssl-1.0.2h.tar.gz wget http://zlib.net/zlib-1.2.8.tar.gz
然后解压文件
cd /comexData/package tar -zxf nginx-1.10.1.tar.gz tar -zxf pcre-8.38.tar.gz tar -zxf zlib-1.2.8.tar.gz tar -zxf openssl-1.0.2h.tar.gz
cd /comexData/package/nginx-1.10.1 ./configure --prefix=/comexHome/nginx \ --pid-path=/comexHome/nginx/nginx.pid \ --error-log-path=/comexLog/nginx/error.log \ --http-log-path=/comexLog/nginx/access.log \ --with-http_ssl_module \ --with-mail --with-mail_ssl_module \ --with-stream --with-threads \ --user=comex --group=comexgroup \ --with-pcre=/comexData/package/pcre-8.38 \ --with-zlib=/comexData/package/zlib-1.2.8 \ --with-openssl=/comexData/package/openssl-1.0.2h
然后安装:
make && make install
测试:
/comexHome/nginx/sbin/nginx -V
启动的时候就用./nginx。要是有问题的话,把配置文件里的user nobody的注释给去掉就行了。
./nginx -t这个来检测是否有问题。
cd usr/local/nginx/sbin
./nginx
二、重启
更改配置重启nginx
kill -HUP 主进程号或进程号文件路径 或者使用 cd /usr/local/nginx/sbin ./nginx -s reload
判断配置文件是否正确
nginx -t -c /usr/local/nginx/conf/nginx.conf 或者 cd /usr/local/nginx/sbin ./nginx -t
三、关闭
查询nginx主进程号
ps -ef | grep nginx
从容停止 kill -QUIT 主进程号
快速停止 kill -TERM 主进程号
强制停止 kill -9 nginx
若nginx.conf配置了pid文件路径,如果没有,则在logs目录下
kill -信号类型 '/usr/local/nginx/logs/nginx.pid'
四、升级
1、先用新程序替换旧程序文件
2、kill -USR2 旧版程序的主进程号或者进程文件名
此时旧的nginx主进程会把自己的进程文件改名为.oldbin,然后执行新版nginx,此时新旧版本同时运行
3、kill -WINCH 旧版本主进程号
4、不重载配置启动新/旧工作进程
kill -HUP 旧/新版本主进程号
从容关闭旧/新进程
kill -QUIT 旧/新进程号
快速关闭旧/新进程
kill -TERM 旧/新进程号