メインコンテンツへ移動

Nginx のアップグレード

本手順は、Nginx デプロイ手順に従って /usr/local/nginx/ にインストールし、systemd で管理している環境を対象とします。以下の操作は root ユーザーで実行してください。

注意

アップグレード時は Nginx が一時停止するため、メンテナンス時間帯に実施してください。Nginx の実行ファイルのみを置き換え、既存のプロキシ設定、証明書、ログローテーション設定は保持します。インストール先やモジュールをカスタマイズしている場合は、互換性を別途確認してください。

アップグレード手順​

  1. 現在のバージョンと設定を確認し、インストールディレクトリをバックアップ

    /usr/local/nginx/sbin/nginx -v
    /usr/local/nginx/sbin/nginx -t
    cp -a /usr/local/nginx /usr/local/nginx.bak

    /usr/local/nginx.bak が既に存在する場合は、バックアップコマンドを実行する前に別の場所へ移動してください。設定チェックとバックアップが成功したことを確認してから続行します。

  2. 対象バージョンのパッケージをダウンロードして展開

    wget https://pdpublic.mingdao.com/private-deployment/offline/common/nginx-1.30.6-glibc2.17-amd64.tar.gz
    tar -zxvf nginx-1.30.6-glibc2.17-amd64.tar.gz
  3. 新しいバージョンで既存の設定を確認

    ./nginx/sbin/nginx -v
    ./nginx/sbin/nginx -p /usr/local/nginx/ -c /usr/local/nginx/conf/nginx.conf -t

    バージョンが正しく、syntax is ok と test is successful が出力されたことを確認してから続行します。依存関係の不足や設定の非互換が表示された場合は、既存サービスを停止せず、先に解消してください。

  4. サービスを停止して Nginx の実行ファイルを置換

    systemctl stop nginx

    サービスが停止したことを確認してから実行します。

    cp -a ./nginx/sbin/nginx /usr/local/nginx/sbin/nginx
    /usr/local/nginx/sbin/nginx -t

    既存の設定を上書きしないよう、パッケージを /usr/local/ に直接展開しないでください。

  5. Nginx サービスを起動

    設定チェックが成功したことを確認してから実行します。

    systemctl start nginx
  6. アップグレード結果を確認

    /usr/local/nginx/sbin/nginx -v
    systemctl status nginx --no-pager

    バージョンが更新され、サービス状態が active (running) であることを確認します。HAP にアクセスし、ページ表示、ログイン、ファイルのアップロードとダウンロードが正常か確認してください。

バージョンのロールバック​

新しいバージョンが起動しない場合や業務アクセスに異常がある場合は、/usr/local/nginx.bak/ のバックアップから実行ファイルを復元します。

  1. Nginx サービスを停止

    systemctl stop nginx
  2. アップグレード前の Nginx 実行ファイルを復元

    サービスが停止したことを確認してから実行します。

    cp -a /usr/local/nginx.bak/sbin/nginx /usr/local/nginx/sbin/nginx
    /usr/local/nginx/sbin/nginx -t
  3. Nginx サービスを起動

    設定チェックが成功したことを確認してから実行します。

    systemctl start nginx
  4. ロールバック結果を確認

    /usr/local/nginx/sbin/nginx -v
    systemctl status nginx --no-pager

    元のバージョンに戻り、サービス状態が active (running) であることを確認します。HAP へのアクセスと業務機能が正常か再確認してください。