macで久々にApacheが起動しなくなったので環境構築やり直したメモ


突然macでApacheが起動しなくなりました😭。自動アップデートとかで時々あるんだけど久々になった。仕事とかローカルのWikiに書いているのでWebサーバ動かないと仕事できないので、この機会に環境を再構築することに。

macOSデフォルトのApacheを止める

まず、macデフォルトのApacheが入っていれば削除

sudo /usr/sbin/apachectl stop
sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

HomebrewでApacheをインストール

brew install httpd
brew services start httpd

それでも駄目なとき

上記のようにしても、Homebrewで入れたApacheが動かない場合、エラーログを見るべし。設定ファイルをチェック。

/usr/local/etc/httpd/httpd.conf

設定ファイルの項目ErrorLogのパスを調べるべし。例えば以下のように記されている。

ErrorLog "/usr/local/var/log/httpd/error_log"

ここで動かなくなった原因が判明

ここまでやって、今回、私がどうしてもうまくApacheが起動しなかった原因は、このエラーログとアクセスログのアクセス権限がなくなっていた事だと判明。そのため、ログを記録しようとApacheが起動した時に、アクセス権がなくてうまくApacheが起動できなくなっていたようだ。

とりあえず動かないと思ったらエラーログを見るべき。エラーログに何も記されていないと思ったら、アクセス権限を確認しよう。