なんちゃってウェブ系エンジニアの備忘録

某IT企業で働くなんちゃってウェブ系エンジニアが技術やデザインなど役に立ちそうなものなどを備忘録として載せていきます

apacheを再起動するときはgracefulを

標題の件、ちょっとメモにしておく。

Apacheの設定変更を行った場合、それを反映するには再起動する必要があるのだが、
私はいつもrestart を使っていた。

# /etc/init.d/httpd restart

restartは、クライアントと接続中のhttpdプロセスを停止してしまうため、
クライアントとの通信が強制的に切断してしまう。
瞬時とはいえ、クライアントにご迷惑をお掛けにしてしまう。それを解決するのが「graceful」

# /etc/init.d/httpd graceful

gracefulはすべてのクライアントとの通信が終了するまで再起動しません。
Webサーバなどを公開していて、httpdサービスの停止が出来ない場合は
かなり効果的といえる。

ただ、SSL証明書の変更やモジュール追加の場合を行った場合、「graceful」だと変更が正しく反映されないというケースもあるので、「graceful」がダメだったら、「restart」を実行すると良いかもしれません。