apacheが起動しない時のチェック方法

Web制作

こんにちは。ツヅクです。

MacにVagrant+CentOS+apacheを入れていますが、apacheが起動しない。。。普段はすぐに起動するのに。。なぜ・・。

起動までにチェックポイントをまとめました。

起動しない時のチェックポイント

  • ディレクトリが存在するか確認する
  • ディレクトリの名前がapacheのconfファイルと同じか確認する
  • apacheのconfファイルの記述があっているか確認する

今回は起動しなかった原因は、apacheの設定ファイルvhost.confの記述とディレクトリ名が異なっていたためapacheを再起動できずエラーになっていました。

ディレクトリ名やファイルに記述する時はコピペがおすすめです。自身満々にタイプしてても、今回のように間違いに気づかないことがありますね。

以下はエラーの内容を調べた過程です。

エラーの内容

コマンドの実行はVagrantのCentOS。apacheの再起動をしようとすると、エラーになりました。

$ sudo systemctl restart httpd
Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details.

そのままapacheのコンフィグのテストを実行します。

$ service httpd configtest
[Fri Mar 19 03:35:36.393235 2021] [so:warn] [pid 8713] AH01574: module rewrite_module is already loaded, skipping
AH00548: NameVirtualHost has no effect and will be removed in the next release /etc/httpd/conf.d/vhost.conf:1
AH00112: Warning: DocumentRoot [/var/www/vhost/vagrant.test/public_html] does not exist
AH00526: Syntax error on line 33 of /etc/httpd/conf.d/vhost.conf:
Invalid command '~', perhaps misspelled or defined by a module not included in the server configuration

AH00112でpublic_htmlが存在していない。AH00526vhost.confの33行目がエラーとなっています。

設定ファイルとディレクトリ名を確認

バーチャルホストのファイル(/etc/httpd/conf.d/vhost.conf)を確認しました。

<VirtualHost *:80>
  DocumentRoot /var/www/vhost/vagrant.test/public_html
  ServerName www.vagrant.test
  ErrorLog /var/www/vhost/vagrant.test/error-log
  CustomLog /var/www/vhost/vagrant.test/access-log common
</VirtualHost>

記述的には問題なさそうで、フォルダの名前を確認してみました。

vhost.confのディレクトリ名をコピーして、マウントされているフォルダにコピペして見ると。。。ディレクトリの名前が変わった。。。ここではじめてディレクトリ名の間違えに気づくという。。。

まとめ

目視でみても間違いが見つからなかったですが、単純なところでミスしてるとなかなか気づかないもんだなぁと。。。(遠い目・・)

コメント

タイトルとURLをコピーしました