むしろ本物サーバー内の方が簡単に設定できてしまうバーチャルホストです。MAMPを使ったLocal環境の方が超面倒です。編集ファイルは以下のみ。
/Applications/MAMP/conf/apache/httpd.conf
/Applications/MAMP/conf/apache/extra/httpd-vhosts.conf
/private/etc/hosts
httpd.confでバーチャルホストを有効にする
/Applications/MAMP/conf/apache/httpd.conf# Virtual hosts
#Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf
↓
# Virtual hosts
Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf
これでMAMPの再起動かけると有効になってます。
バーチャルホストの設定
/Applications/MAMP/conf/apache/extra/httpd-vhosts.conf以下のような感じで書きます。本物のApacheのconfと違うのはDocumentRootのパスは”ダブルクォートで囲んで最後は/スラッシュで終わってないとダメっぽい。
<VirtualHost *:80> ServerAdmin webmaster@example.com DocumentRoot "/Users/USERNAME/Desktop/localhost/sample/" ServerName sample.local <Directory "/Users/USERNAME/Desktop/localhost/sample"> AllowOverride All </Directory> </VirtualHost>次のホストの設定をします。Localで使う環境なので名前解決はPC内で行えばよいということで、hostsファイルに直接IPとホスト名を書き込みます。(LAN内にDNSサーバーとかあったらそっちを使うとか、いろいろありますが。)
/private/etc/hosts
127.0.0.1 localhost sample.local
MAMPの再起動をして、
http://sample.local/
にアクセスします。