エラーの内容
MAMP の新しいバージョン案内があったため、バージョンアップを行いました。
新しい MAMP のバージョンは 7.0
使用しているのは MAMP Pro ではない、Free 版。
新しい MAMP version 7.0 をインストールして、スタート。Webブラウザから Laravel で作ったサイトにアクセスしたところ、トップページは出たものの、その後のログインページで 404 Not Found
原因
MAMP ver7 デフォルトの Apache では mod_rewrite
モジュールが有効になっていませんでした。
修正方法
httpd.conf ファイルの
LoadModule rewrite_module modules/mod_rewrite.so
がコメントされていたのを、コメントを外して動作OKとなりました。
詳細
MAMP のバージョンアップは過去に何度も行っており、おおよそ自動で過去の /Applications/MAMP ディレクトリを /Applications/MAMP_日付フォルダにリネームしてくれた上、過去の htdocs の下のディレクトリは全て新しい MAMP の下に移動してくれていました。
今回の Version 6 → Version 7 でも同様。
Apache の ポート番号を確認。8888 で変更なし。
MySql のポート番号を確認。8889 で変更なし。
MySQL サーバは version 5.7 と 8.0 が選択できるようになっていたので 5.7 を選択。
一旦そのまま MAMP をスタートさせ、Webブラウザでアクセス。
htdocs の下のフォルダがずらずらと表示されました。私はマルチドメインで仕事をしているので、その設定がしていないのねと、 httpd.conf の
# Virtual hosts
Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf
を有効にし、/Applications/MAMP/conf/apache/extra/httpd-vhosts.conf
の VirtualHost を編集
<VirtualHost *:8888>
DocumentRoot "/Applications/MAMP/htdocs/プロジェクト/public/"
ServerName "local.プロジェクト"
ErrorLog "/Applications/MAMP/logs/プロジェクト_log"
CustomLog "/Applications/MAMP/logs/プロジェクト-access_log" common
</VirtualHost>
hosts は変更していないので、MAMP だけ再起動して、 Web ブラウザでプロジェクトに再アクセス。
トップページにアクセスし成功。良々と思い、ログインボタンを押したら、
404 not found
当然入れ替えたのは MAMP だけですので、その設定が変わったのだろうとhttpd.conf
の中を確認.
原因に書いたように URLリライトを行う mod_rewrite
モジュールがコメントになっていたので、#
を外し、有効化したら、OKとなりました。