centos

怎样升级centos上的nginx版本

小樊
57
2025-07-20 19:19:41
栏目: 智能运维

要在 CentOS 上升级 Nginx 版本,你可以按照以下步骤操作:

方法一:使用官方源升级

  1. 备份旧版本 Nginx

    sudo cp -a /usr/sbin/nginx /usr/sbin/nginx_old
    
  2. 添加官方 Nginx 源: 编辑 /etc/yum.repos.d/nginx.repo 文件,添加或更新为官方源:

    [nginx-stable]
    name=nginx stable repo
    baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
    gpgcheck=1
    enabled=1
    gpgkey=https://nginx.org/keys/nginx_signing.key
    module_hotfixes=true
    
    [nginx-mainline]
    name=nginx mainline repo
    baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
    gpgcheck=1
    enabled=0
    gpgkey=https://nginx.org/keys/nginx_signing.key
    module_hotfixes=true
    
  3. 选择要安装的版本: 默认情况下,nginx-stable 会安装稳定版本。如果你想安装主线版本,可以将 nginx-stable 改为 nginx-mainline

  4. 更新 Nginx

    sudo yum update nginx
    
  5. 重启 Nginx

    sudo systemctl restart nginx
    

方法二:手动编译安装

如果你需要特定版本的 Nginx 或者官方源中没有你需要的版本,可以选择手动编译安装:

  1. 安装依赖包

    sudo yum install -y epel-release
    sudo yum install -y gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel
    
  2. 下载所需版本的 Nginx 源码: 访问 Nginx 官方下载页面,找到你需要的版本并下载源码包。

    wget http://nginx.org/download/nginx-1.21.6.tar.gz
    tar -zxvf nginx-1.21.6.tar.gz
    cd nginx-1.21.6
    
  3. 配置编译选项

    ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_addition_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_stub_status_module --with-http_auth_request_module --with-threads --with-stream --with-http_slice_module --with-mail --with-mail_ssl_module --with-file-aio --with-http_v3_module
    
  4. 编译并安装

    make
    sudo make install
    
  5. 备份旧版本 Nginx

    sudo cp -a /usr/sbin/nginx /usr/sbin/nginx_old
    
  6. 创建新的符号链接

    sudo ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx
    
  7. 重启 Nginx

    sudo systemctl restart nginx
    

注意事项

通过以上步骤,你应该能够在 CentOS 上成功升级 Nginx 版本。

0
看了该问题的人还看了