CentOS平滑升级Nginx 【转】
博客专区 > Jerry-hu 的博客 > 博客详情
CentOS平滑升级Nginx 【转】
Jerry-hu 发表于4年前
CentOS平滑升级Nginx 【转】
  • 发表于 4年前
  • 阅读 127
  • 收藏 3
  • 点赞 0
  • 评论 0

【腾讯云】买域名送云解析+SSL证书+建站!>>>   

服务器:CentOS 6.4 64位 升级方案:nginx1.4.0 – nginx1.4.3 Nginx编译后就一个小文件,不带动态库,升级也可以无缝升级,并不影响访问,按下面的命令执行就可以,具体想升级的版本可以到nginx上查看 首先下载Nginx

$ wget http://nginx.org/download/nginx-1.4.3.tar.gz

解压缩后,执行:

<!-- lang: shell -->
$ tar -zxvf nginx-1.4.3.tar.gz
$ cd nginx-1.4.3/
$ ./configure --user=www --group=www --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module
$ make

注意,千万不要执行make install

注意:–prefix=为您安装nginx的目录

小提示:如何查看nginx安装配置选项?

$ service nginx -V

接着升级nginx

编译完,在objs目录下有一个nginx执行文件,就是它了:

<!-- lang: shell -->
// 备份下原来老的nginx文件
$ sudo mv /usr/local/webservice/nginx/sbin/nginx /usr/local/webservice/nginx/sbin/nginx.old
// 进入objs目录拷贝nginx文件
$ cd objs
$ sudo cp nginx /usr/local/webserver/nginx/sbin/nginx
// 测试看看
$ /usr/local/webserver/nginx/sbin/nginx -t
// 返回上级目录
$ cd ../
// 升级nginx
$ sudo make upgrade

小提示:nginx进程pid文件默认位置是nginx的logs目录:/logs/nginx.pid;如果您修改过nginx的pid存放位置那么可能出现类似这样的错误提示:

<!-- lang: shell -->
$ sudo make upgrade
/usr/local/webserver/nginx/sbin/nginx -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
kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`
cat: /usr/local/nginx/logs/nginx.pid: 没有那个文件或目录
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]
make: *** [upgrade] 错误 1

解决方法:

网上一大堆,比如各种kill进程id,复杂程度我就不想说了,这里给一个简单的办法

先stop当前的nginx的进程

<!-- lang: shell -->
$ sudo kill `cat /usr/local/webserver/nginx/nginx.pid`
修改nginx.conf
$ sudo vi /usr/local/webserver/nginx/conf/nginx.conf
// 找到并修改pid
pid    /usr/local/webserver/nginx/logs/nginx.pid;

拷贝新版本的nginx到当前sbin目录,执行升级(参照上述方法) 启动nginx 至此升级完毕!

标签: nginx 升级
  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 6
博文 18
码字总数 5027
×
Jerry-hu
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: