陈奇网络工作室

linuxcentos7实现妙的安装的nginx平滑升级从1.12.2版本到1.16.1版本

系统运维

妙的安装nginx-1.12.2升级到nginx-1.16.1

一、查看现有的nginx编译参数

[root@vm-3 ~]# nginx -V

nginx版本:nginx/1.12.2

由gcc 4.8.5 20150623(红帽4.8.5-36)构建(海湾合作委员会)

使用OpenSSL 1.0.2k构建-2017年FIPS奥运会年一月26日

TLS SNI支持已启用

配置参数:prefix=/usr/share/nginxsbin-path=/usr/sbin/nginxmodules-path=/usr/lib 64/nginx/modulesconf-path=/etc/nginx/nginx。conferror-log-path=/var/log/nginx/error。loghttp-log-path=/var/log/nginx/access。loghttp-client-body-temp-path=/var/lib/nginx/tmp/client bodyhttp

二、将上面加粗字体部分进行配置,加粗字体后面为系统的配置文件不需要配置,只需要到制造,千万不要进行安装。如果进行安装会将原来的配置文件覆盖

事先可以先把这些依赖包下好,配置之后就不会出现下面这些错误了

yum-y install gcc make GeoIP GeoIP-devel GeoIP-data perl-devel perl-ExtUtils-Embed GD-devel libxml 2 libxslt-devel gperftools pcre-devel OpenSSL OpenSSL-devel

准备新版本的nginx放在/usrr/local/下

[root @ VM-3]# wget http://nginx.org/download/nginx-1.16.1.tar.gz

[root @ VM-3]# tar-xf nginx-1.16.1.tar.gz

[root@vm-3]# cd nginx-1.16.1

[root@vm-3 nginx-1.16.1]# ./configureprefix=/usr/share/nginxsbin-path=/usr/sbin/nginxmodules-path=/usr/lib 64/nginx/modulesconf-path=/etc/nginx/nginx。conferror-log-path=/var/log/log/nginx/error。loghttp-log-path=/var/log/nginx/access。loghttp-client-body-temp-path=/var/lib/nginx/tmp/client _ bodyhttp

有可能的报错

报错1:/配置:错误:HTTP XSLT模块需要libxml2/libxslt

图书馆。您可以不启用模块或安装库。

原因:缺少依赖

解决:

[root@vm-3 nginx-1.16.1]# yum -y安装libxml2 libxslt-devel

再次配置

报错2:/配置:错误:HTTP图像筛选器模块需要绿色发展库。

您可以不启用模块或安装库。

解决:安装依赖

好吃的安装广东发展银行

再次配置

报错3:/配置:错误:需要实际抽取与汇报语言模块textutils:Embed

解决:

好吃的安装perl-devel perl-ExtUtils-Embed

再次配置

报错4:/配置:错误:GeoIP模块需要GeoIP库。您可以不启用该模块或安装该库。

解决:

好吃的安装地理信息开发地理信息数据

再次配置

报错5:/配置:错误:谷歌性能工具模块需要谷歌性能工具

图书馆。您可以不启用该模块或安装该库。

解决:

妙的安装gperftools**

再次配置成功

三、制造千万不要进行安装

四、备份原nginx二进制文件

备份二进制文件和nginx的配置文件(期间nginx不会停止服务)

【root @ VM-3 nginx-1。16 .1]# mv/usr/sbin/nginx/usr/sbin/nginx _ $(日期%F)

五、复制新的nginx二进制文件,进入新的nginx源码包

【root @ VM-3 nginx-1。16 .1]# CP/root/nginx-1。16 .1/objs/nginx/usr/sbin/

六、测试新版本的nginx是否正常

【root @ VM-3 nginx-1。16 .1]# nginx-t

报错:

nginx:[紧急]模块'/usr/lib 64/nginx/modules/ngx _ http _ GeoIP _ module。所以版本1012002,而不是/usr/share/nginx/modules/mod-http-GeoIP。会议:1中的1016001

nginx:配置文件/etc/nginx/nginx.conf测试失败

解决:

vim /etc/nginx/nginx.conf //进入配置文件中

注释# include/usr/share/nginx/modules/* .会议

再次检测成功

七、给nginx发送平滑迁移信号(若不清楚pid路径,请查看nginx配置文件或find/-name \\\'nginx.pid\\\ '查找)

【root @ VM-3 nginx-1。16 .1]# kill-USR2 cat/run/nginx。PID

八、查看nginx pid,会出现一个nginx.pid.oldbin

【root @ VM-3 nginx-1。16 .1]# ll/run/nginx *

-rw-rr1 root root 5 Sep 6 00:36/run/nginx。PID

-rw-rr1 root root 6 Sep 6 00:00/run/nginx。PID。旧垃圾箱

九、从容关闭旧的Nginx进程

【root @ VM-3 nginx-1。16 .1]#压井绞车猫/运行/nginx。PID。旧垃圾箱

十、此时不重载配置启动旧的工作进程

【root @ VM-3 nginx-1。16 .1]# kill-HUP cat/run/nginx。PID。旧垃圾箱

十一、结束工作进程,完成此次升级

【root @ VM-3 nginx-1。16 .1]# kill-QUIT cat/run/nginx。PID。旧垃圾箱

十二。验证Nginx是否已成功升级。

[root @ VM-3 nginx-1 . 16 . 1]# nginx-v

nginx版本:nginx/1.16.1

升级成功。

更多关于云服务器,域名注册,虚拟主机的问题,请访问西部数码代理官网:www.chenqinet.cn。

相关推荐

后台-系统设置-扩展变量-手机广告位-内容页底部广告位3