nginx版本升級到1.10

遇到問題公司業務需求,某站點需支持http2,通過查閱nginx > 1.9.5 支持http2。於是着手升級nginx版本。

解決問題:


首先做好原nginx的備份。(配置文件conf、應用程序/usr/local/nginx/sbin/nginx 等備份)


1. 下載nginx最新穩定版本。

通過nginx官網查閱,下載了nginx1.10.1版本 (最新穩定版本)

wKiom1f58w7xqinnAAAg35CG2IY436.png-wh_50


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.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章