接続中のプロセスが終了するのを待ってApacheを停止する

HOMELinux技術 リナックスマスター.JP(Linuxマスター.JP)Apache, Linuxtips, Webサーバー管理, サーバー管理 > 接続中のプロセスが終了するのを待ってApacheを停止する

Linuxサーバー管理者の技術を2日で学べる「初心者向けリナックスセミナー」
独学で1年以上掛かるプロのLinux技術を、たった2日間で習得できます。
リナックスマスター2日間集中セミナー【CentOS7版】
 (今すぐ↑をクリックしてください。)

Apacheの停止には、/etc/init.d/httpd stopを使用します。
しかし、stopを実行すると接続中のhttpdプロセスは強制的に終了してしまいます。
つまり、接続してきていたクライアントとの通信が強制的に切断してしまうのです。

そこで、接続中のプロセスが終了するまで待って、
停止する機能がApacheには実装されています。

クライアントとの通信が終了するまで待って再起動するには、
下記のように「graceful-stop」を指定します。
graceful-stopは、/etc/init.d/httpdスクリプトでは実行できず、
スクリプトの元となるapachectlファイルを実行する必要があります。

# /usr/local/apache2/bin/apachectl graceful-stop

graceful-stopを実行すると、利用されていないListen状態のプロセスが終了し、
使用中のプロセスは停止しない状態になります。

すべてのクライアントとの通信が終了するまで停止できませんので、
通信状況によっては、かなり待たなければならない場合があります。
しかし、通信接続保持を優先させる場合には効果的な機能となります。




■CentOS7.4サーバー構築マニュアルを無料プレゼント
下記3冊のマニュアルを無料プレゼントしています。
・CentOS7.4サーバー構築マニュアル(105ページ)
・VMware Playerで作る仮想Linux環境構築マニュアル(40ページ)
・データベース(PostgreSQL・MySQL)構築・CentOSバージョンアップマニュアル(33ページ)

※常に最新のCentOSが使用できます。
詳しくは↓のページで説明しています。今すぐクリックしてください。
 無料マニュアルをダウンロードする  無料マニュアルをダウンロードする