zoukankan      html  css  js  c++  java
  • 编译安装平滑升级

    编译安装平滑升级


    平滑升级的步骤

    1. 获取之前的编译参数

    2. 下载新模块

    3. 重新编译软件,加上--add-module=新模块的解压路径

    4. 备份原程序并停止服务

    5. 把原程序用新程序覆盖

    6. 启动新程序


    举例

    nginx新增第三方模块echo-nginx-module

    # 获取之前的编译参数
    [root@nginx ~]# nginx -V
    nginx version: nginx/1.20.0
    built by gcc 8.3.1 20191121 (Red Hat 8.3.1-5) (GCC) 
    built with OpenSSL 1.1.1g FIPS  21 Apr 2020
    TLS SNI support enabled
    configure arguments:
    --prefix=/usr/local/nginx
    --user=nginx
    --group=nginx
    --with-debug
    --with-http_ssl_module
    --with-http_realip_module
    --with-http_image_filter_module
    --with-http_gunzip_module
    --with-http_gzip_static_module
    --with-http_stub_status_module
    --http-log-path=/var/log/nginx/access.log
    --error-log-path=/var/log/nginx/error.log
    
    # 下载新模块echo-nginx-module
    [root@nginx ~]# cd /usr/src/
    [root@nginx src]# wget https://github.com/openresty/echo-nginx-module/archive/refs/heads/master.zip
    [root@nginx src]# unzip master.zip
    [root@nginx src]# ls
    debug  echo-nginx-module-master  kernels  master.zip  nginx-1.20.0  nginx-1.20.0.tar.gz
    
    # 重新编译软件
    [root@nginx src]# cd nginx-1.20.0/
    [root@nginx nginx-1.20.0]# ./configure 
    --prefix=/usr/local/nginx 
    --user=nginx 
    --group=nginx 
    --with-debug 
    --with-http_ssl_module 
    --with-http_realip_module 
    --with-http_image_filter_module 
    --with-http_gunzip_module 
    --with-http_gzip_static_module 
    --with-http_stub_status_module 
    --http-log-path=/var/log/nginx/access.log 
    --error-log-path=/var/log/nginx/error.log 
    --add-module=/usr/src/echo-nginx-module-master
    [root@nginx nginx-1.20.0]# make
    
    # 停止服务、备份原程序、将原程序替换 并 启动新程序
    [root@nginx ~]# nginx -s stop && 
    mv /usr/local/nginx/sbin/nginx /tmp/ && 
    cp /usr/src/nginx-1.20.0/objs/nginx /usr/local/nginx/sbin/ && 
    /usr/local/nginx/sbin/nginx
    
    # 检查是否升级成功
    [root@nginx ~]# nginx -V
    nginx version: nginx/1.20.0
    built by gcc 8.3.1 20191121 (Red Hat 8.3.1-5) (GCC) 
    built with OpenSSL 1.1.1g FIPS  21 Apr 2020
    TLS SNI support enabled
    configure arguments: --prefix=/usr/local/nginx
    --user=nginx --group=nginx
    --with-debug
    --with-http_ssl_module
    --with-http_realip_module
    --with-http_image_filter_module 
    --with-http_gunzip_module 
    --with-http_gzip_static_module 
    --with-http_stub_status_module
    --http-log-path=/var/log/nginx/access.log 
    --error-log-path=/var/log/nginx/error.log 
    --add-module=/usr/src/echo-nginx-module-master
    

    测试新模块

    [root@nginx ~]# vim /usr/local/nginx/conf/nginx.conf
    ······
    server {
            listen       80;
            server_name  localhost;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                echo "this is a test!";
            }
    ······
    
    # 检查语法是否有误
    [root@nginx ~]# nginx -t
    nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
    nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
    
    [root@nginx ~]# nginx -s reload
    

    验证

    [root@nginx ~]# curl http://192.168.100.1
    this is a test!
    
  • 相关阅读:
    判断两个链表是否相交
    【转】TCP连接突然断开的处理方法
    【转】TCP/IP协议——ARP详解
    HTTP协议COOKIE和SESSION有什么区别
    【转】K-Means聚类算法原理及实现
    【转】机器学习实战之K-Means算法
    unity3d 调用Start 注意
    u3d 加载PNG做 UI图片
    Opengl的gl_NormalMatrix
    OpenGL 遮挡查询
  • 原文地址:https://www.cnblogs.com/yuqinghao/p/14828983.html
Copyright © 2011-2022 走看看