MAMPに複数プロジェクトを共存させる方法
MAMPはドキュメントルートが
/Applications/MAMP/htdocs
に固定されており、単一のプロジェクトしか設置できないと思われがちですが、複数プロジェクトを置くことも可能です。その方法を2つお伝えしたいと思います。
筆者の開発環境
PC:Apple M1 チップ搭載MacBook Air
OS:macOS Ventura 13.6
MAMP:6.8
方法1
MAMPのコントロールパネルからドキュメントルートを変更する方法です。コントロールパネルを起動し「Preferences」ボタンをクリックしてください。
下記のウインドウが表示されるので、上部のメニューから「Server」を選択し「Choose…」ボタンをクリックしてください。フォルダの選択画面が現れますのでドキュメントルートに指定したいフォルダをここから選択してください。
変更ができたら、いつも通り「localhost:8888」でアクセスしてください。
この方法は非常にお手軽ですが、プロジェクトを変更する度にドキュメントルートを選択しなおさなければならないという手間があります。
方法2
例えば「laravel.test」や「wordpress.test」といったように個別の名前でそれぞれのプロジェクトにアクセスできると嬉しいですね。最初の設定が少し難しいですが挑戦してみましょう。
例題に使うプロジェクトは下記で作ったLaravelのプロジェクトを使います。
httpd.confの修正
「htttpd.conf」ファイルはapache(アパッチ)の設定ファイルです。
Finderを起動し「アプリケーション」→「MAMP」→「conf」→「apache」と進み「httpd.conf」ファイルのバックアップを取ってください。(ファイル上で右クリックしコピー&ペーストすればOKです。)
「httpd.conf」を普段お使いのテキストエディタで開き、「Virtual hosts」と検索してください。見つかったらすぐ下の行の先頭文字の「#」を削除しコメントアウトを解除してください。
#Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf
↓
Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf
httpd-vhosts.conf
次に、さらに1階層下の「extra」にある「httpd-vhosts.conf」というファイルも同様にバックアップを取ってください。
お使いのテキストエディタでファイルを開き、下記の画像のようにAをコピーして、Bの位置にペーストしてください。
Bの位置にコピーされたコードを下記のように修正してください。「ServerAdmin」という項目は必要ありませんので消してOKです。「DocumentRoot」はドキュメントルートに指定したいフォルダのフルパス、「ServerName」はブラウザでアクセスしたい名前です。
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "/Applications/MAMP/Library/docs/dummy-host.example.com"
ServerName dummy-host.example.com
ServerAlias www.dummy-host.example.com
ErrorLog "logs/dummy-host.example.com-error_log"
CustomLog "logs/dummy-host.example.com-access_log" common
</VirtualHost>
↓
<VirtualHost *:80>
DocumentRoot "/Users/papagram/Laravel/example-app/public"
ServerName example-app.test
ServerAlias www.example-app.test
ErrorLog "logs/example-app.test-error_log"
CustomLog "logs/example-app.test-access_log" common
</VirtualHost>
MAMPのコントロールパネルから右上の電源アイコンを「Stop」→「Start」の順番でクリックして再起動を行ってください。
hostsの修正
Finderを起動し「アプリケーション」→「ユーティリティ」から「ターミナル」を起動してください。下記のコマンドを実行してください。パスワードはお使いのパソコンのパスワードです。
sudo vi /etc/hosts
hostsファイルが開けたら、カーソルを最終行の末尾まで移動してください。「a」を押して、INSERTモードに変更し、改行して下記の1文を追加してください。「example-app.test」の部分は先程設定した「ServerName」と同じにしてください。
127.0.0.1 example-app.test
入力できたら、escキーを押して「:wq」と入力してエンターキーを押してください。
MAMPのポート番号を変更
MAMPのコントロールパネルより「Preferences」をクリックしてください。
上部のメニューより「Ports」を選択し「80 & 3306」ボタンをクリックしてください。下記の画像のように数値が変わったら「OK」ボタンをクリックしてください。
Laravelのデータベース設定を修正
上で紹介した記事「MAMP環境にLaravelをインストールする」の通りにLaravelを構築した方はデータベースの接続設定の修正も必要です。プロジェクトをVSCodeで開いて「.env」を開いてください。13行目の「DB_PORT」を下記のように修正してください。
DB_PORT=8889
↓
DB_PORT=3306
確認
ブラウザを起動し、アドレスバーに先程「hosts」ファイルに設定した「example-app.test」を入力してアクセスしてみてください。トップページが表示されたら成功です。
プロジェクトが増えたら、「httpd-vhosts.conf」ファイルと「hosts」ファイルに同じ要領で記述を追加すればどんどん個別の名前でプロジェクトを増やせます。
補足
もし設定ファイルの記述にミスがあり、MAMPが起動しなくなったら「httpd.conf」と「httpd-vhosts.conf」を削除してバックアップを元の名前に戻してください。
ブラウザにアクセスしてもトップページが表示されない場合
記述にミスがないか確認する
MAMPを再起動する
ブラウザのキャッシュをクリアしてみる
パソコンを再起動する
を試してみてください。
PHP/Laravelのシステム開発は株式会社パパグラムへぜひご相談ください。
この記事が気に入ったらサポートをしてみませんか?