概要
macOS には標準で Apache httpd がインストールされています。 この Apache httpd がコンピュータの起動とともに自動起動していた場合、nginx などの別の HTTP サーバーをインストールした際に利用ポートが競合するなどの問題が発生します。 ここでは macOS に標準でインストールされた Apache httpd を停止する方法について解説します。
Apache httpd の自動起動を解除する
macOS の起動時に自動的にアプリケーションを起動する処理は launchd という機能が担っています。 ここでやるべきは、launchd の自動起動対象のアプリケーションから Apache httpd を除外することです。 次の launchctl list コマンドを実行することで、Apache httpd が launchd の対象となっていることがわかります。 (ここでは grep で Apache httpd に関する行だけを抜き出しています)
$ sudo launchctl list | grep httpd
Password:
83 0 org.apache.httpd
まずは Apache httpd がバックグラウンドで実行されている場合は、次のコマンドで停止します。
$ sudo launchctl stop /System/Library/LaunchDaemons/org.apache.httpd.plist
そしてさらに次のコマンドを実行することで、Apache httpd を launchd の対象から除外することができます。
$ sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist
これで Apache httpd を停止し、自動起動もしなくなります。 上記の launchctl list コマンドを再度実行しても、今度は何も表示されません。
また自動起動させたくなったら
なお、もしまた標準でインストールされている Apache httpd を自動起動させたくなった場合は、次のコマンドを実行すれば良いです。
$ sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist
おわりに
本稿では macOS に標準でインストールされている Apache httpd の自動起動を解除する方法について解説しました。