休みで、のんびりと本をよんで勉強していたら、突然のアラート。調べてみると、サーバに対して、ping も飛ぶし、ssh接続もできた。死んでいるのは、Webサーバへのアクセスのみ。プロセスもみてみると、httpdはいる。ブラウザでは応答不能なので、正常に動作しておらず、ハングアップしたっぽい。(FreeBSD 13.1 release と Apache2.4 の組み合わせ)
↓ ps auxの結果
root@ray:/var/log # ps aux | grep httpd
root 925 0.0 0.9 48980 17712 - Ss 25Jul22 1:44.07 /usr/local/sbin/httpd -DNOHTTPACCEPT
www 22306 0.0 1.6 63636 33864 - S 10:59 0:00.43 /usr/local/sbin/httpd -DNOHTTPACCEPT
www 22307 0.0 1.6 63700 34020 - S 10:59 0:00.43 /usr/local/sbin/httpd -DNOHTTPACCEPT
www 22308 0.0 0.9 48980 17728 - S 10:59 0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEPT
www 22309 0.0 0.9 48980 17728 - S 10:59 0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEPT
www 22310 0.0 0.9 48980 17728 - S 10:59 0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEPT
www 22311 0.0 0.9 48980 17728 - S 10:59 0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEPT
root 22314 0.0 0.1 12844 2032 0 S+ 10:59 0:00.00 grep httpd
「-DNOHTTPACCEPT」がhttpdの引数としてあるけれど、どうやらこれは関係ないっぽい。これがついていても、Apacheは動いているというページがあるので。
「httpd -k restart」をやってみたが、なかなか応答が帰ってこず。応答が帰ってきたあとも、ブラウザではアクセスできず。
完全にhttpdプロセスが止まっていないことも考慮して、「httpd -k stop」「httpd -k stop」を行ってみたが駄目だった。エラーは出ているけれど、httpd自体は起動できているので、とりあえず無視。
root@ray:/var/log # httpd -k start
[Mon Aug 15 10:59:51.520174 2022] [core:warn] [pid 22319] (2)No such file or directory: AH00075: Failed to enable the 'httpready' Accept Filter
[Mon Aug 15 10:59:51.520649 2022] [core:warn] [pid 22319] (2)No such file or directory: AH00075: Failed to enable the 'httpready' Accept Filter
[Mon Aug 15 10:59:51.520656 2022] [core:warn] [pid 22319] (2)No such file or directory: AH00075: Failed to enable the 'dataready' Accept Filter
[Mon Aug 15 10:59:51.520661 2022] [core:warn] [pid 22319] (2)No such file or directory: AH00075: Failed to enable the 'dataready' Accept Filter
もう一度、restartで再起動させてみたら、今度は正常にブラウザでアクセスできた。とりあえず、障害としては復旧したのでよし。
http/httpsでの疎通が取れなくなった時間のエラーログも確認してみたが、エラーログは記録されていなかった。調査はしたけれど、結局、原因不明。
自分のサーバなので、休みでよかった。しかし、休みで家にいるときに、この不可解な現象は・・・己の未熟さを顧みて、勉強を続けろってことだろうか。