毎回MacOSをアップデートするとローカル環境が動かなくなります。
備忘録としてメモを残しておきます。
前提条件
前提としてSierraでは「/etc/apache2/users/{ユーザー名}.conf」でバーチャルホストの設定をしていることとします。
手順
1. 「/etc/apache2/httpd.conf」の修正
「/etc/apache2/httpd.conf~previous」としてバージョンアップ前のファイルが残っているが、
php5からphp7になっていたりと環境が変更されているため、単純にコピーし直すのではなく書き換えすることにしました。
151行目のコメントアウト削除
#LoadModule http2_module libexec/apache2/mod_http2.so
167行目のコメントアウト削除
#LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so
173行目のコメントアウト削除
#LoadModule userdir_module libexec/apache2/mod_userdir.so
175行目〜177行目のコメントアウト削除
#LoadModule rewrite_module libexec/apache2/mod_rewrite.so
#LoadModule php7_module libexec/apache2/libphp7.so
#LoadModule perl_module libexec/apache2/mod_perl.so
447〜448行目のコメントアウト削除
#AddType text/html .shtml
#AddOutputFilter INCLUDES .shtml
510行目のコメントアウト削除
※これで「/etc/apache2/extra/httpd-userdir.conf」が読み込まれるようになる
#Include /private/etc/apache2/extra/httpd-userdir.conf
httpd-vhosts.confで設定している人は516行目の以下もコメントアウト削除
※自分はコメントアウトのままです
#Include /private/etc/apache2/extra/httpd-vhosts.conf
2. 「/etc/apache2/extra/httpd-userdir.conf」の修正
16行目のコメントアウト削除
※これで「/etc/apache2/users/{ユーザー名}.conf」が読み込まれるようになる
#Include /private/etc/apache2/users/*.conf
3. 完了
Apacheを再起動して確認
sudo apachectl restart
余談
デフォルトで表示される「It Works!!」は「/Library/WebServer/Documents」のファイルが読み込まれているみたいです。
ちなみに自分の「/etc/apache2/users/{ユーザー名}.conf」の設定は以下のような感じです。
ポート番号は予約されていない番号を使っています。
Listen 60000
<VirtualHost *:60000>
DocumentRoot "/Users/{ユーザー名}/Sites/test"
ServerName test
<Directory "/Users/{ユーザー名}/Sites/test">
AddType text/html .shtml .html
AddHandler server-parsed .shtml .html
Options Indexes MultiViews FollowSymlinks Includes
AllowOverride all
Require all granted
</Directory>
</VirtualHost>
#
# 以下省略
#