MAMP使い方・設定手順 覚書

# MAMP使い方・設定手順

仕事PCがMACに変わり、ローカルでの開発環境をスムーズに行えるようにMAMPの設定・プロジェクト設定のメモになります。

色々と参考記事に、自分の設定手順をまとめてみました。

 * MAMPのダウンロード
 * MAMPのインストール
 * バーチャルホストのカスタマイズ
 * httpd.conf を設定
 * hosts を編集
 * MAMPの再起動
 * SSIを有効にする

## MAMPのダウンロード
MAMPの公式サイトからダウンロードする

[MAMPのインストール公式サイト](http://www.mamp.info/en/)
![img01.png](https://qiita-image-store.s3.amazonaws.com/0/34020/ec565374-39ce-732d-7264-74bb1ded9ccc.png)

## MAMPのインストール
無料で使いたい方は、MAMP FREEのDownloadをクリックしZIPを解凍してください。

解凍したファイルにdmgファイルをダブルクリックで実行

問題なければ、"Agree"をクリックします。

MAMPとMAMP PROというフォルダが作成されるので、アプリケーションフォルダへドラッグ

MAMPの中にMAMP.appというファイルがあるので、ダブルクリックで実行

警告アラートが出てきたら、MAMPを起動をクリック

![img02.png](https://qiita-image-store.s3.amazonaws.com/0/34020/22b816bf-4ee7-77f1-920a-888470d3846b.png)

【サーバを起動】をクリックし【スタートページを開く】をクリックし下記の画面が表示されれば成功です。

![img03.png](https://qiita-image-store.s3.amazonaws.com/0/34020/f61c0de0-7aec-45a4-b420-1aef331fb1eb.png)

## バーチャルホストのカスタマイズ
次にバーチャルホストの設定になります。

MAMPインストール時は、/Applications/MAMP/htdocs/がローカルディレクトリとして設定されています。

http://localhost:8888/ をブラウザで確認することができます。

これだけでは、プロジェクトごとに複数設定することができないため、

事前に複数のプロジェクトで動かせるようにバーチャルホストの設定を行います。

バーチャルホストの設定は以下の2ファイルになります。

 * /Applications/MAMP/conf/apache/httpd.conf
 * /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf
※作業前に、上記ファイルのバックアップをとる

## httpd.conf を設定
 * /Applications/MAMP/conf/apache/httpd.conf

ファイルをテキストエディタで開きます。

ソースコード 574行目付近に該当のコードが記述されています。

``` 
 # Virtual hosts
 # Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf
```
※```#```はコメントアウトしている意味

この二行目の先頭にある```#```を削除し、有効にさせます。

``` 
 # Virtual hosts
Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf
```

## httpd-vhosts.confを設定する
 * /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf

ファイルをテキストエディタで開きます。

このファイルの編集は、主に開発環境を行うディレクトリの設定になります。

27行目付近に既にバーチャルホストの設定サンプルが記述しています。

```
<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>
    ServerAdmin webmaster@dummy-host2.example.com
    DocumentRoot "/Applications/MAMP/Library/docs/dummy-host2.example.com"
    ServerName dummy-host2.example.com
    ErrorLog "logs/dummy-host2.example.com-error_log"
    CustomLog "logs/dummy-host2.example.com-access_log" common
</VirtualHost>
```
上記のサンプル設定の下に、開発環境を行うディレクトリを設定します。

取り急ぎ設定のため、無駄なものを端折り下記のような形でバーチャルホストの設定をしました。

 * 【DocumentRoot】は開発環境のディレクトリを設定
 * 【SeverName】はテストサイトの名前を任意で設定

```
<VirtualHost *:80>
 DocumentRoot "/Users/ユーザ名/開発環境までのパス"
 ServerName ドメイン名（任意）.local
</VirtualHost>
```

上記の手順でバーチャルホストの設定を増やしていき、複数の環境を作っていきます。

## hosts を編集
ドメインでアクセスするためには、httpd.configだけではアクセスできません。

OS本体にあるhostsファイルを修正する必要があります。

※指定されたドメインをIPアドレスに変換するためのファイルになります。

hostsファイルの編集は、ターミナル・GUIどちらでも設定することが可能です。

### GUIの編集手順
だれでもできるように、GUIのみ紹介したいと思います。

![img04.png](https://qiita-image-store.s3.amazonaws.com/0/34020/5865bfd4-9397-b1a2-94c1-9fd1d3912c72.png)


Finder の【移動 > フォルダへ移動】を選択します。

入力ダイアログが出てきたら、下記を入力し移動します。

```
/private/etc/
```

該当のディレクトリが開けたら、hostsファイルをテキストエディタで開きます。
※作業前に、上記ファイルのバックアップをとる

```
/private/etc/hosts
```

httpd-vhosts.confで追加した任意のドメイン名をIPアドレスと紐付ける

```
127.0.0.1	ドメイン名（任意）.local
```

## MAMPの再起動
上記の設定が環境したら、MAMPを再起動する

再起動後、設定したドメインで表示されれば成功です。

## SSIを有効にする
案件で、SSIで読み込んでいるページが多いため設定しました。

### httpd.configを開く
 * /Applications/MAMP/conf/apache/httpd.conf
ソースコード514行目付近

```
#AddType text/html .shtml
#AddOutputFilter INCLUDES .shtml
```

上記コードの```#```を削除して.htmlを追加します。

```
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml .html
```

次に、ソースコード206行目付近

```
Options Indexes FollowSymLinks
```

【ExecCGI Includes】（CGIとSSIの使用を許可）を追加します。

```
Options Indexes FollowSymLinks ExecCGI Includes
AllowOverride None
```

## 最後に...
参考記事を読んでいる中、色々と設定できることを知りました。

今回は、自分の環境構築の手順だったので、そこまで深く調べきれていません。

もう少し時間があるときにでも、覚え書きメモを追加していこうと思います。

## 参考記事
 * [MAMPでローカル環境構築のまとめ](http://webscripter.jp/technical-note/summary-of-building-local-mamp-environment/)
 * [MacOS + MAMP の方](http://pickles.pxt.jp/setup/preparation/mac/)
 * [MAMPのインストール公式サイト](http://www.mamp.info/en/)
 * [MAMPでバーチャルホストの設定をして、SSIを有効にする。](http://blog.sakurachiro.com/2011/11/mamp-vhosts-ssi/)
 * [MAMP は PHP の include がデフォルトでできる！しかし…](http://h2ham.net/mamp-php)