Apacheのエラー[Job for httpd.service failed because the control process exited with error code.]を対策する

Apacheのエラー[Job for httpd.service failed because the control process exited with error code.]を対策する サーバー

Webサーバーの設定を変更してApacheを起動しようとしたら、「Job for httpd.service failed because the control process exited with error code. See “systemctl status httpd.service” and “journalctl -xe” for details.」と表示されてApacheの起動に失敗する。

原因を調査して対策します。

Apacheの状態を調べる

systemctlで調査

エラー表示の中に「See "systemctl status httpd.service"」と書いてあるので、まずsystemctlコマンドでApacheのステータスを調べます。

service httpd configtestで調査

service httpd configtestでApacheの設定ファイルにエラーが無いか調べます。

apachectl -Vで調査

調査結果を確認してみると、どの調査でも、

AH00526: Syntax error on line 377 of /etc/httpd/conf/httpd.conf:

Invalid command 'php_admin_value', perhaps misspelled or defined by a module not included in the server configuration

という記述がありますので、今回のApache起動時のエラーの原因は、Apacheの設定ファイル(httpd.conf)の377行目にある「php_admin_value」という記述がSyntax errorとなっていたためでした。

PHP-FPM環境(mod_phpが無効化された環境)では、Apache設定ファイル内の「php_admin_value」という記述はエラーになります。

対策(httpd.confの修正)

vi等で/etc/httpd/conf/httpd.confを開き、377行目の「php_admin_value」から始まる行をコメントアウトします。

動作確認

Apacheを起動し、ステータスを確認します。

Apacheの正常起動が確認できました。

Apacheの正常起動を確認

以上で解決です。