47
40

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

MAMPのインストール&初期設定+αをしてみる

Last updated at Posted at 2019-06-26

Gitでサイト構築時の確認環境のため、初めてローカル環境を作ることになりました。
諸々調べたのですが、各所に情報が散らばっているのが面倒だったので、インストール時に必要そうなことをまとめておきます。

続きを書きました。(2020/04/10)
MAMPのSSL対応 / PHPのバージョン変更方法

#インストール
MAMP公式ページからOSに合わせてダウンロード。
あとはインストローラーにしたがってインストールしてください。
スクリーンショット 2019-06-25 13.00.59.png

MAMPとMAMP PROが同時にダウンロードされてしまうので、
インストール後、不要な方をアンインストールしたほうが迷わなくていいと思います。

#初期設定
MAMPを起動します。
アプリケーション > MAMPのフォルダ内に入っているので、ちょっとわかりにくいですが、灰色のゾウさんです。

MAMPを立ち上げたら、上部のメニューバーより MAMP > Preferencesを選択して設定画面を開いてください。
スクリーンショット 2019-06-25 13.08.08.png

##起動・終了時の動作
スクリーンショット 2019-06-25 13.09.24.png

###各項目
起動時

  • サーバーを起動する
  • アップデートを確認する
  • サーバーを立ち上げた際にWebStartページを開く

終了時

  • サーバーを停止する

必要なものにチェックを入れて[OK]を押してください。

##ポートの設定
スクリーンショット 2019-06-25 13.15.46.png
初期設定ではこのようになっているので、「Set Web & My SQL ports to 80 & 3306」をクリックして変更してください。

スクリーンショット 2019-06-25 13.16.57.png
これで、ブラウザでアクセスするURLが「http://localhost:8888/」 から「http://localhost/」に変更されます。

##PHPの設定

スクリーンショット 2019-06-25 13.27.03.png
PHPのバージョンとキャッシュが設定できます。
ひとまずはこのままでいいと思います。

##Webサーバの設定
スクリーンショット 2019-06-25 13.29.03.png
サーバーの種類とドキュメントルートの設定ができます。
こちらも、何もなければこのままで大丈夫です。

#タイムゾーンの設定
次にphp.iniからタイムゾーンの設定を行います。
初期設定ではドイツのベルリンになっているので、日本時間に変更します。

Applications > MAMP > bin > php > php0.0.0 > conf 内の「php.ini」をいじります。
PHPのバージョンが複数あるので、先ほど設定したバージョンのものか確認してください。
スクリーンショット 2019-06-25 13.39.59.png

「php.ini」をコピペ、「php.ini.org」などとしてバックアップをとりましょう。
エディターで「php.ini」を開き、910行目あたりを

;date.timezone = "Europe/Berlin"

から

date.timezone = "Asia/Tokyo"

に変更、保存してください。
このとき、行頭のセミコロンを残すとコメントアウトになりますので、必ず削除しましょう。
※php.iniを編集した場合、必ずサーバーを再起動してください。

確認のため、以下のphpファイルを作成し、localhostに配置、確認してみましょう。

index.php
<?php
echo date("Y-m-d H:i:s",strtotime("now"));
?>

日本時間が表示されれば成功です。

#バーチャルホストの設定
複数案件を同時進行する場合が多いと思うので、バーチャルホストの設定をしてマルチドメインのローカル環境を作ります。

##事前準備
先ほど設定したドキュメントルート内に2つのフォルダをつくり、それぞれに内容の違うindex.htmlを配置します。
スクリーンショット 2019-06-26 11.38.25.png

##Apacheの設定ファイルの編集
Applications > MAMP > conf > apache 内の「httpd.conf」をエディターで開きます。
575行目あたりの

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

Include /Applications/MAMP/conf/apache/extra/httpd-vhosts.conf

と書き換えます。
行頭の#はコメントアウトなので、これでextra内の「httpd-vhosts.conf」を読みにいく設定が有効になります。

次に該当の「httpd-vhosts.conf」ファイルを編集します。
Applications > MAMP > conf > apache > extra > httpd-vhosts.conf

27行目以降に「<VirtualHost *:80>〜</VirtualHost>」で囲まれた設定例が2つあるので、
行頭に#をつけて、これらをコメントアウトします。

#<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>

その下に、自分の設定したいルートフォルダを追加します。

<VirtualHost *:80>
    DocumentRoot "/Applications/MAMP/htdocs"
    ServerName localhost
</VirtualHost>
 
<VirtualHost *:80>
    DocumentRoot "/Applications/MAMP/htdocs/hoge"
    ServerName hoge
</VirtualHost>
 
<VirtualHost *:80>
    DocumentRoot "/Applications/MAMP/htdocs/fuga"
    ServerName fuga
</VirtualHost>
  • DocumentRoot:先ほど準備したそれぞれのドキュメントルート
  • ServerName:設定したいドメイン名

編集後、サーバーを再起動してください。

##hostsファイルの編集
次にOS内のhostsファイルを編集します。
通常は隠しファイルになっていて、管理者権限が必要なため、ターミナルでsudoを使うのが楽なようです。

$ sudo vi /private/etc/hosts

パスワードを聞かれるのでOSのユーザーパスワードを入力してください。
※ターミナルではパスワードが入力されても、画面上変化はありません。

「hosts」ファイルの内容が表示されるので、「a」キーを押してインサートモードにします。
「127.0.0.1 localhost」の下に下記を追加してください。

127.0.0.1       hoge
127.0.0.1       fuga

「esc」キーを押してインサートモードを終了
「:wq」と入力して「リターン」キーを押すと、変更を保存の上、ファイルを閉じます。

これで「http://localhost/」「http://hoge/」「http://fuga/」にアクセスすると、先ほど設定したドキュメントルートにアクセスできるようになります。
それぞれ設定したindex.htmlが表示されるか確認してみてください。

###ターミナルを使いたくない場合
ターミナルに触りたくない場合、エディターでも編集できます。

まずは適当なフォルダで隠しファイルを表示させるように切り替えましょう。
「command + shift + .」で切り替えができます。

隠しファイルを表示させるようにしたら、
Macintosh HD > private > etc 内の「hosts」ファイルをエディターで開いてください。

編集しようとすると、ロックがかかっているためファイルが複製されますが、そのまま編集し、わかりやすい場所(デスクトップなど)に「hosts.txt」として保存します。
スクリーンショット 2019-06-26 12.44.49.png

保存したファイルの名前を変更し、「hosts」とします。
それをFinder上で Macintosh HD > private > etc に配置すると、ポップアップが出てくるので、「認証」を押してください。
その後、パスワードを求められるので入力して完了です。

これで「http://localhost/」「http://hoge/」「http://fuga/」にアクセスして、それぞれ設定したindex.htmlが表示されるか確認してみてください。

#.htaccessの有効化
ssiを使用する場合やWordpressなどで必要なので、最初から有効にしておきます。

Applications > MAMP > conf > apache 内の「httpd.conf」をエディターで開きます。
※さっきバーチャルホスト設定のときにいじったファイルです。

204行目あたりにある

<Directory />
    Options Indexes FollowSymLinks
    AllowOverride none
</Directory>

<Directory />
    Options Indexes FollowSymLinks
    AllowOverride All
</Directory>

に書き換えてください。
これで.htaccessが有効になります。

一部のディレクトリにのみ有効化したい場合は

<Directory "ディレクトリのパス">
    Options Indexes FollowSymLinks
    AllowOverride All
</Directory>

とすることで、一部のディレクトリのみ有効化もできます。

#引用・参考
MAMPの初期設定 - MAMPの使い方(https://pc-karuma.net/mamp-settings-mac/
MAMPで複数ドメインを運用する(http://do-wp.com/virtual-hosts-on-mamp/

47
40
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
47
40

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?