downmovies 发表于 2018-11-8 08:37:35

nginx版本升级到1.10

  遇到问题:公司业务需求,某站点需支持http2,通过查阅nginx > 1.9.5 支持http2。于是着手升级nginx版本。
  解决问题:
  首先做好原nginx的备份。(配置文件conf、应用程序/usr/local/nginx/sbin/nginx 等备份)
  1. 下载nginx最新稳定版本。
  通过nginx官网查阅,下载了nginx1.10.1版本 (最新稳定版本)

  2. 查看老版本的编译参数
  # /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版本
  # /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>  完成升级nginx版本到1.10.1.

页: [1]
查看完整版本: nginx版本升级到1.10