Apacheをサービスとして起動し、SIGWINCHで終了

Apacheをサービスとして起動し、SIGWINCHで終了

実行すると、service apache startログファイルに次のエントリが表示されます。

[mpm_event:notice] [pid 1906:tid XXX] AH00489: Apache/2.4.23 (Unix)
                         OpenSSL/1.0.2g PHP/7.0.9 configured -- resuming normal operations
[core:notice] [pid 1906:tid XXX] AH00094: Command line: '/usr/sbin/httpd'
[mpm_event:notice] [pid 1906:tid XXX] AH00492: caught SIGWINCH, shutting down gracefully

しかし、サービスがapache開始されていませんか?インターネットでSIGWINCH[]の意味を見つけることができますが、Window size changeこの場合はあまり役に立ちません。

文書/etc/systemd/system/apache.service:

[Unit]
Description=The Apache Webserver [FaF Compiled]
After=network.target nss-lookup.target time-sync.target
[email protected] plymouth-quit.service xdm.service

[Service]
Type=notify
PrivateTmp=true
ExecStart=/usr/sbin/httpd -k start
ExecReload=/usr/sbin/httpd -k graceful
ExecStop=/usr/sbin/httpd -k graceful-stop
KillMode=mixed

[Install]
WantedBy=multi-user.target
Alias=httpd.service apache.service

SLES 12 SP1 で実行中です。私はApacheを直接コンパイルしました。実行するとapachectl -k startうまく動作し、PHPコードにアクセスして実行できます。

私の質問: 私は何が間違っていましたか、apacheサービスが開始されません。私はそれを活性化しましたsystemctl enable apache。出力は次のとおりです。

ln -s '/usr/lib/systemd/system/apache2.service' '/etc/systemd/system/httpd.service'
ln -s '/usr/lib/systemd/system/apache2.service' '/etc/systemd/system/apache.service'
ln -s '/usr/lib/systemd/system/apache2.service' '/etc/systemd/system/multi-user.target.wants/apache2.service'

答え1

systemdApacheに停止を指示してシグナルとログをgraceful-stop生成します。 (このシグナルはApacheで(乱用)使用されます。)SIGWINCHcaught SIGWINCH, shutting down gracefullySIGWINCH

IMO、誤った設定を含む他のバグが原因で停止し、正常な動作である関連症状が発生する可能性があります。

通常、デフォルトでSLESディレクトリにあるApacheエラーログを注意深く読んでください/var/log/apache2

答え2

同様の問題レポートが見つかりました。赤い帽子。 「NOTABUG」状態で終了しました。最終的に設定エラーとして確認されました。

図1 1


イメージ#2 2


画像#3 サム


修正する

同様の問題レポートが見つかりました。サーバー障害。以下のような答えがもう1つあります。

図 1/1ここに画像の説明を入力してください。

答え3

コメントからRed Hatのバグレポートリンク先トーマスの答え:

httpdが正常に起動したことをsystemdに認識させるには、00-systemd.confを実行する必要があります。

私はこれを実行して動作しました。

ln -sr /etc/httpd/conf.modules.d/00-systemd.conf /etc/httpd/conf.d/00-systemd.conf
systemctl restart httpd

私はAmazon Linux 2を使用しています(RHEL / Centos 7でも動作します)。

答え4

AWS Cloud9 コンソールでこの問題に直面しました。これSIGWINCH自体が問題だと思いましたが、AWS Cloud 9のデフォルト設定が30分後にインスタンスを終了することがわかりました。SIGWINCHこれでApacheが終了するように指示します。

私はそれについて何も知らなかったし、それを見つけるのに2日かかりました。誰かの時間を節約してください。

「マイ環境を停止」設定を調整する必要があります。

関連情報