[Mac] Apacheを自動起動及び停止する方法 [launchd]

Apacheの自動起動

Macを起動した時(ログインは不要)に、Apacheが自動起動させる方法。

Apache

Mac起動時の自動起動は、「launchd」が担当している。

以下を実行し、「org.apache.httpd」が自動起動の対象かを調べる。

sudo launchctl list | grep httpd

org.apache.httpd.plistの場所
/System/Library/LaunchDaemons

対象となっていれば、自動起動するハヅ。

対象でなければ、以下を実行して対象に追加する。

sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist

Apache以外のHTTP鯖を入れていると、Apacheとポートが競合するなどの不具合が生じるため、自動起動をOFFにする必要もある。

この場合は、以下で除外する。

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

sudo launchctl list | grep php
sudo launchctl list | grep sql

とすれば、PHPやmysqlが自動起動かも分かるし、

sudo launchctl list

とすれば、全部の自動起動が分かる。

sudo launchctl list | grep httpd

org.apache.httpd
homebrew.mxcl.httpd

の両方が出る場合は、使用していない方を除外した方が良いだろう。

Homebrew版を外す場合

sudo launchctl stop /usr/local/Cellar/httpd/2.4.52/homebrew.mxcl.httpd.plist
sudo launchctl unload -w /usr/local/Cellar/httpd/2.4.52/homebrew.mxcl.httpd.plist

そして削除

brew uninstall httpd

Homebrew版にする場合

インストール

brew install httpd

そして登録

sudo launchctl load -w /usr/local/Cellar/httpd/2.4.52/homebrew.mxcl.httpd.plist

登録時に

Path had bad ownership/permissions

となる場合は、

sudo chown root /usr/local/Cellar/httpd/2.4.52/homebrew.mxcl.httpd.plist

としてから再度実行。

-----

Apacheの開始
sudo apachectl start

停止
sudo apachectl stop

再起動
sudo apachectl restart

関連:MacのPHPをv7.4.5にアップデートしたらソコからゴツ面倒なコトになッた

関連:Macでサーバー(Apache,PHP,MySQL,phpMyAdmin,WordPress)を作る

関連:[Mac] PHPのバージョンが異なる問題と解決方法 [HighSierra]

関連:古いMacにXcodeをインストールする方法とHomebrewでのアップデート