
Mac上でMAMPを使用してローカルにバーチャルホストを設定する方法
バーチャルホストとは1台のWebサーバーで複数のドメイン名のサイトを管理する仕組みのことです。
バーチャルホストを利用すれば、複数のサイトを運用する際、1台のWebサーバーで運用できるのですが、このバーチャルホストはローカル環境でも実現できます。
Macでローカルサーバーを作成する際、MAMPを利用することが多いのですが、そのMAMPを利用してバーチャルホストを作成したいと思います。
スポンサーリンク
バーチャルホスト設定 Mac OSX+MAMP
Macでローカルサーバーを設置する際はMAMPを使用するのが便利です。
MAMPでのバーチャルホストの設定は、ドメイン名で管理する方法とポート番号で管理する方法があります。
その2つの方法を紹介しますが、まずはポート番号で管理する方法を解説します。
バーチャルホストをポート番号で管理する場合
MAMPをインストールするとデフォルトでは「\Applications\MAMP\htdocs\」がローカルのディレクトリとなります。
「http://localhost:8888/」でアクセスするとhtdocs内のファイルが表示されます。
デフォルトの8888というポート番号はそのままにして、それ以外の番号を増やしてバーチャルホストを設定していきます。
編集するファイルは以下の2ファイルです。
「\Applications\MAMP\conf\apache\httpd.conf」
「\Applications\MAMP\conf\apache\extra\httpd-vhosts.conf」
まずはテスト用に「\Applications\MAMP\htdocs\」内にtest01フォルダを作成します。
test01フォルダ内に適当な文言を記述したindex.htmlを入れてください。
httpd.confファイルを編集
ファイルの場所は下記です。
「\Applications\MAMP\conf\apache\httpd.conf」
「httpd.conf」を開くと、574行目辺りに以下の記述があります。
1 2 |
# Virtual hosts # Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf |
上記の2行目の先頭にある#を削除して下記の様にします。
1 2 |
# Virtual hosts Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf |
削除したら保存し、次に「httpd-vhosts.conf」ファイルを編集します。
httpd-vhosts.confファイルを編集
ファイルの場所は下記です。
「\Applications\MAMP\conf\apache\extra\httpd-vhosts.conf」
「httpd-vhosts.conf」を開き、ファイルの末尾に以下のように記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
Listen 8001 <VirtualHost *:8001> DocumentRoot "/Applications/MAMP/htdocs/test01" </VirtualHost> Listen 8002 <VirtualHost *:8002> DocumentRoot "/Applications/MAMP/htdocs/test02" </VirtualHost> Listen 8003 <VirtualHost *:8003> DocumentRoot "/Applications/MAMP/htdocs/test03" </VirtualHost> |
増やしたい分を下記に続けて記述します。
上記のようにバーチャルホストを使用したい分だけ、任意のポート番号を追加していきます。
今回は8001~8003と3つのバーチャルホストを作成しました。
※ポート番号が別のサービスや機器で使用していないか注意してください。
ファイルを保存後、MAMPのコントロールパネルを開いて、apacheサーバを再起動してください。
下記にアクセスして、test01フォルダ内のファイルの内容が表示されれば完了です。
1 |
http://localhost:8001/ |
ポート番号でバーチャルホストを作成するのはとても簡単ですね。
バーチャルホストをドメイン名で管理する場合
Mac OSXにはApacheが元からインストールされていて、ローカルサーバーとして使えるようになっています。
MAMPは元から入っているApacheを利用せずに、改めて別の場所にApacheを入れます。
そのため元から入っているApacheとぶつからないようにポート番号を8888にしています。
Web標準のサーバーのポート番号は80です。
バーチャルホストをドメイン名で管理する場合、ポート番号を8888から80に設定する必要があります。
しかしその前に元から入っているApacheが動作しないように、システム環境設定で「インターネット共有」を切っておきます。
インターネット共有が切れているか確認します。
次にMAMPのコントロールパネルの設定を押して設定画面へ。
「ポート」タブ内の「WebとMySQLのポートを80と3306に設定」ボタンを押します。
これでWeb標準であるApacheのポート番号が80、MySQLのポート番号が3306となりました。
デフォルトの「\Applications\MAMP\htdocs\」にアクセスした場合のURLは「http://localhost/」になりました。
「\Applications\MAMP\htdocs\」内に複数のサイトを管理する場合を想定します。
まずはテスト用に「\Applications\MAMP\htdocs\」内にtest01フォルダを作成します。
test01フォルダ内に適当な文言を記述したindex.htmlを入れてください。
編集するファイルは以下の3ファイルです。
「\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」
「httpd.conf」を開くと、574行目辺りに以下の記述があります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# Virtual hosts # Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf <pre> 上記の2行目の先頭にある#を削除して下記の様にします。 <pre> # Virtual hosts Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf <pre> #を削除したら保存し、次に上記のパスを参考に「httpd-vhosts.conf」ファイルを編集します。 ※もし「httpd-vhosts.conf」が見つからない場合は「httpd.conf」ファイルを編集することになります。 ファイルの末尾など分かりやすい位置に以下を記述してください。 <h3>httpd-vhosts.confファイルを編集(無い場合はhttpd.confを編集)</h3> ファイルの場所は 「\Applications\MAMP\conf\apache\extra\httpd-vhosts.conf」 「httpd-vhosts.conf」を開き、ファイルの末尾に以下のように記述します。 <pre> <Directory "/Users/<usdername>/Projects"> Options All Order Deny,Allow Deny from all Allow from localhost </Directory> NameVirtualHost *:80 <VirtualHost *:80> DocumentRoot "/Applications/MAMP/htdocs/test01" ServerName test01 </VirtualHost> <VirtualHost *:80> DocumentRoot "/Applications/MAMP/htdocs/test02" ServerName test02 </VirtualHost> <VirtualHost *:80> DocumentRoot "/Applications/MAMP/htdocs/test03" ServerName test03 </VirtualHost> |
増やしたい分を下記に続けて記述します。
hostsファイルを編集
ファイルの場所は
「/private/etc/hosts」
Macのhostsファイルは分かり辛い場所にあるので、下記の方法でアクセスすると楽です。
また、hostsファイルはMac標準のテキストエディタでは編集できませんので、「mi」や「sublimetext」等を使用します。
ファインダーメニューの「移動→フォルダへ移動」
ダイアログボックスに「/private/etc」をコピペしてhostsファイルを見つけます。
管理者権限を変更する必要があるので、hostsファイルをctr+クリックし、「情報を見る」を選択。
アクセス権を「読み出しのみ」から「読み書き」に変更後、テキストエディット以外のエディタでファイルを開きます。
hostsファイルの下の方に以下の記述があります。
「127.0.0.1 localhost」
その下に続けて以下の記述をします。
「127.0.0.1 test01」
「127.0.0.1 test02」
「127.0.0.1 test03」
ファイルを保存後、MAMPのコントロールパネルを開き、apacheサーバを再起動すれば完了です。
ブラウザのURL欄にtest01と入力してブラウザ内にindex.htmlの内容が表示されればOKです。
127.0.0.1 はそのコンピュータ自身を示すIPアドレスのことです。
test01 と入力することで自分のパソコンにアクセスし「httpd-vhosts.conf」の情報を参照して、該当の情報を表示するということです。
以上、Mac上でMAMPを使用してバーチャルホストを設定する方法でした。
スポンサーリンク