0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

NGINXプロセスが落ちたときの自動再起動設定

Posted at

NGINXプロセスが意図せず終了した場合、自動で再起動するには、systemdを活用するのが一般的です。以下に、その手順を説明します。


1. systemdサービスファイルの確認

通常、NGINXはsystemdによって管理されています。サービスファイルの場所は以下の通りです:

/etc/systemd/system/nginx.service

または

/lib/systemd/system/nginx.service

2. サービスファイルの編集

サービスファイルに自動再起動の設定を追加します。

手順:

  1. サービスファイルを開きます(ファイルの場所に応じて適切に変更)。
    sudo nano /lib/systemd/system/nginx.service
    
  2. [Service]セクションに以下を追加または編集します:
    [Service] Restart=always RestartSec=5s
    
    • Restart=always: プロセスが停止した場合、常に再起動します。
    • RestartSec=5s: 再起動までの待機時間を5秒に設定します(必要に応じて調整可能)。

3. 設定のリロードと適用

設定を変更したら、systemdの設定をリロードして、NGINXサービスを再起動します。

コマンド:

sudo systemctl daemon-reload
sudo systemctl restart nginx

4. NGINXの自動起動設定の確認

NGINXがサーバー起動時に有効になるよう、サービスが有効になっているか確認します。

コマンド:

sudo systemctl enable nginx

5. 設定の確認

再起動設定が正しく反映されているか確認します。

コマンド:

systemctl show nginx | grep Restart

期待される出力:

Restart=always RestartSec=5s

6. 動作確認

NGINXプロセスを意図的に終了させて、再起動されるか確認します。

コマンド:

sudo pkill nginx

数秒後、再起動されたことを確認できます:

systemctl status nginx

補足

  • Restartオプションには他にも以下の設定があります:
    • no: 再起動しない(デフォルト設定)。
    • on-failure: エラー終了時のみ再起動。
    • always: 常に再起動。
  • NGINXの設定ファイル(nginx.conf)に問題がある場合、再起動が失敗する可能性があるため、事前に設定ファイルのテストを行うことが推奨されます。
    sudo nginx -t
    

この方法で、NGINXプロセスが意図せず終了した場合でも自動で再起動するように設定できます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?