标签:nginx 版本升级 1.10 http2
遇到问题:公司业务需求,某站点需支持http2,通过查阅nginx > 1.9.5 支持http2。于是着手升级nginx版本。
解决问题:
首先做好原nginx的备份。(配置文件conf、应用程序/usr/local/nginx/sbin/nginx 等备份)
1. 下载nginx最新稳定版本。
通过nginx官网查阅,下载了nginx1.10.1版本 (最新稳定版本)
2. 查看老版本的编译参数
[root@nginx001 ~]# /usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.7.6
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC)
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --with-pcre=/mnt/app//pcre-8.36 --with-zlib=/mnt/app//zlib-1.2.8 --add-module=/mnt/app//ngx_cache_purge-2.1 --with-http_perl_module --with-http_ssl_module --with-http_stub_status_module --add-module=/mnt/app//nginx_tcp_proxy_module-master --add-module=/mnt/app//nginx_upstream_check_module-master --add-module=/mnt/app/ngx_req_status
3. 解压nginx1.10.1 版本,并重新编译
ngx_cache_purge-2.1 不支持nginx1.10. 故重新下载ngx_cache_purge-2.3.tar.gz(下载地址:http://labs.frickle.com/files/)
nginx1.10 已支持tcp代理,故不需要编译参数--add-module=/mnt/app//nginx_tcp_proxy_module-master
并加入http2 支持,--with-http_v2_module
所以正确编译参数:
cd /mnt/app/nginx-1.10.1
./configure --prefix=/usr/local/nginx --with-pcre=/mnt/app/pcre-8.36 --with-zlib=/mnt/app/zlib-1.2.8 --add-module=/mnt/app/ngx_cache_purge-2.3 --with-http_perl_module --with-http_ssl_module --with-http_stub_status_module --with-stream --add-module=/mnt/app/nginx_upstream_check_module-master --with-http_v2_module
make
make install (如果不执行,报错nginx.pm版本号不对。经测试重新安装不会影响原nginx配置文件)
4. 备份并替换老nginx程序
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_1.7.bak
cp /mnt/app/nginx-1.10.1/objs/nginx /usr/local/nginx/sbin/nginx
查看替换之后的程序: 1.10版本
[root@nginx001 ~]# /usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.10.1
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC)
built with OpenSSL 1.0.1e-fips 11 Feb 2013
TLS SNI support enabled
configure arguments: --prefix=/usr/lcoal/nginx --with-pcre=/mnt/app/pcre-8.36 --with-zlib=/mnt/app/zlib-1.2.8 --add-module=/mnt/app/ngx_cache_purge-2.3 --with-http_perl_module --with-http_ssl_module --with-http_stub_status_module --with-stream --add-module=/mnt/app/nginx_upstream_check_module-master --with-http_realip_module --with-http_v2_module
检查配置文件并重新启动
/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx -s reload
完成升级nginx版本到1.10.1.
本文出自 “濛sir的积累” 博客,请务必保留此出处http://mengsir.blog.51cto.com/2992083/1859838
标签:nginx 版本升级 1.10 http2
原文地址:http://mengsir.blog.51cto.com/2992083/1859838