zoukankan      html  css  js  c++  java
  • 平滑升级nginx

    ## 先查看老版本 nginx 的编译参数,我这里没有。
    [root@centos-linux home]# cd /usr/local/nginx/sbin/
    
    [root@centos-linux sbin]# ./nginx -V
    nginx version: nginx/1.16.1
    built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC) 
    configure arguments: --with-http_v2_module --with-http_ssl_module --with-http_sub_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre --with-http_realip_module
    
    ## 下载最新的稳定版本
    [root@centos-linux sbin]# wget http://nginx.org/download/nginx-1.18.0.tar.gz
    [root@centos-linux home]# tar -zxvf nginx-1.18.0.tar.gz
    
    ## 进入 nginx 源码目录,按照配置参数 configure make,注意这里不要 make install
    [root@centos-linux home]# cd nginx-1.18.0
    [root@centos-linux nginx-1.18.0]#  ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx/ --with-http_v2_module --with-http_ssl_module --with-http_sub_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre --with-http_realip_module
    [root@centos-linux nginx-1.18.0]# make
    
    ## 备份原来的 nginx 二进制文件
    [root@centos-linux nginx-1.18.0]# mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx16.old
    ## 将刚刚编译的新的 nginx 二进制文件放到 sbin 目录下
    [root@centos-linux nginx-1.18.0]# cp objs/nginx /usr/local/nginx/sbin/
    
    [root@centos-linux nginx-1.18.0]# cd /usr/local/nginx/sbin/
    [root@centos-linux sbin]# ls
    nginx  nginx16.old
    
    ## 找到原来的 nginx 进程号,发送 USR2 命令
    [root@centos-linux sbin]# cd ../logs/
    ## 此时旧的Nginx主进程将会把自己的进程文件改名为.oldbin,然后执行新版 Nginx
    [root@centos-linux logs]# kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`
    
    ## 关闭原来的 nginx 进程
    [root@centos-linux logs]# ls
    [root@centos-linux logs]# access.log  error.log  nginx.pid  nginx.pid.oldbin
    [root@centos-linux logs]# kill -QUIT `cat nginx.pid.oldbin`
    
    ## 查看新版本的 nginx 信息
    [root@centos-linux nginx-1.18.0]# cd /usr/local/nginx/sbin/
    [root@centos-linux sbin]# ./nginx -V
    nginx version: nginx/1.18.0
    built by gcc 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC) 
    built with OpenSSL 1.0.2k-fips  26 Jan 2017
    TLS SNI support enabled
    configure arguments: --with-http_v2_module --with-http_ssl_module --with-http_sub_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre --with-http_realip_module
    

    附录:
    安装 nginx 需要的库

    [root@centos-linux home]# yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel
    
  • 相关阅读:
    SpringBoot自动配置原理(七)
    SpringBoot 集成Shiro
    Shiro配置跳过权限验证
    rsync+ssh同步备份文件
    okhttp3设置代理(http/https)
    Spring RestTemplete支持Https安全请求
    电商课题V:分布式锁
    电商课题:对付秒杀器等恶意访问行为的简单梳理
    电商课题:客户端的IP地址伪造、CDN、反向代理、获取的那些事儿
    电商课题I:集群环境下业务限流
  • 原文地址:https://www.cnblogs.com/manastudent/p/12912845.html
Copyright © 2011-2022 走看看