Mac+mamp(Apache/Mysql)+Wordpressで動かしてみる

macにはphpもApacheも標準で入っているのでそれを使って作業しても良いと思います。
[Mac標準搭載を使ってWordpressを動かしてみる(未公開)]

全体を通して以下のサイトを参考にしています。
[WordPressをローカルにインストール - MAMP](http://webkaru.net/wordpress/wp-install-mamp/)

# mampの設置、環境構築
## 1 Apacheの設定
mampp の環境構築の仕方は以下を参照させてもらいました。
[MAMP使い方・設定手順 覚書](http://qiita.com/redamoon/items/216a4fa78f83b5620e21)

**<参照したところと違うところ、ちょっとした注意点>**
権限の問題があるので、直すときはsudoコマンドを使って直しました。

1 mampをインストール
2 バーチャルホストのカスタマイズ  
2-1 httpd.conf を設定
(/Applications/MAMP/conf/apache/httpd.conf)  

```title:httpd.conf
 48 Listen 8888
186 ServerName localhost:8888
```
> 
mampのhttpd.confのポートは8888で設定されています。
標準Apacheをとめて80で使用するならば、2箇所ポートを書き換えればいい

・ httpd-vhosts.confを設定
インストールした直後のhttpd-vhosts.confのポートは80で設定されています。
httpd.confを80に設定したのならば、*:80　の設定のままでブラウザから見えます。
この時、標準のApacheは止めましょう。
>
localhostのポート80が動いているのかを確認する

```
$ telnet localhost 80
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
telnet: Unable to connect to remote host
```
上の結果から止まっていることがわかる
また、mampのApacheが起動しているのかを確認するのに、状況を知るためにもターミナルから確認してもいいかも。

```
$ sudo /Applications/MAMP/Library/bin/httpd -t
Password:
Warning: DocumentRoot [/Applications/MAMP/Library/docs/dummy-host.example.com] does not exist
Warning: DocumentRoot [/Applications/MAMP/Library/docs/dummy-host2.example.com] does not exist
Syntax OK
```
上記のようにwarningが出てきたのはVirtualHostにポート80を設定しているから。VirtualHostを8888のように統一させていれば出てこない。


```title:/Applications/MAMP/conf/apache/extra/httpd-vhosts.conf
「ドメイン名（任意）.local」=[mamp.wp.localhost]にして設定

<VirtualHost *:80>
 DocumentRoot "/Users/＊＊＊/Devmamp”
 ServerName mamp.wp.localhost
 ErrorLog "logs/mamp.wp.localhost-error_log"
 CustomLog "logs/mamp.wp.localhost-access_log" common
</VirtualHost>
```
Eroorlog、CustomLogを書いておくと、/Applications/MAMP/Library/logs　に残るみたい
設定しなければ、/Applications/MAMP/logs/apache_error.log にエラーログが残るようです。

------
標準のApacheと被らないようにするには以下の様な方法があります。
★1 httpd.confのポートを8888のままにしておくならば、httpd-vhosts.confのポートを8888にする

```title:httpd-vhosts.conf
NameVirtualHost *:8888
:
<VirtualHost *:8888>
 :
</VirtualHost>
```
★2 追加したVirtualHostだけ違うポート8001にする

```title:httpd-vhosts.conf
NameVirtualHost *:80
:
<VirtualHost *:80>
 :
</VirtualHost>

Listen 8001
<VirtualHost *:8001>
 DocumentRoot "/Users/＊＊＊/Devmamp”
 ServerName mamp.wp.localhost
</VirtualHost>
```
------

2-2 hosts を編集

```
$ sudo vim /etc/hosts
```
```title:/etc/hostsにドメイン追加
127.0.0.1       mamp.wp.localhost
```

3 MAMPの再起動  
![スクリーンショット 2015-07-30 14.11.16.png](https://qiita-image-store.s3.amazonaws.com/0/39911/44546a4e-694a-d9c5-1a41-0a1c764bcc87.png)  
無事に起動すると、自動的にポート888888 のブラウザが立ち上がる。  
http://localhost:8888/MAMP/?language=Japanese  
ちなみに、この画面が表示されてるのに、自分が設定したドメインで画面が表示されないならば、MAMPインストールの問題ではなく何か設定ファイルが影響してると言えると思う。  
![a2da1455-f2b6-6587-388c-c4dfb95eedd5.png](https://qiita-image-store.s3.amazonaws.com/0/39911/dbed9193-be56-2c2a-5a60-78d7557dc9d6.png)


4 自分が設定したドメインでブラウザが表示されるかを確認
・ /Users/＊＊＊/Devmamp　の下に以下のファイルを置いておきブラウザよりアクセスしてみる（http://mamp.wp.localhost/）

```title:index.php
<?php phpinfo();
```

この時、なんかエラー出た [Forbidden]

**考えられるいけない理由**
・/Applications/MAMP/conf/apache/httpd.conf と　/Applications/MAMP/conf/apache/extra/httpd-vhosts.conf のポート設定があっていない。
・標準ApacheとmampのApacheがぶつかっている可能性がある。
　ポート80で行うなら標準Apacheを止める
　標準Apacheと併用してしようするならば80ポート以外で設定する
・ポートを80から変えたのに、ポートを指定してブラウザを開いていない。

今回は標準Apacheと併用を考えて、ポートを80から8001に変えてhttpd-vhosts.confを設定しました。
ブラウザへのアクセスURLは 　
http://mamp.wp.localhost:8001/  
これで意図した場所に保存したファイル(php/html)が表示されることを確認できました。

## 2 php.iniの設定
1. タイムゾーンの変更  
mampのデフォルトのタイムゾーンは　date.timezone = "Europe/Berlin"　になっています。"Asia/Tokyo"　にします。

```title:/Applications/MAMP/bin/php/php5.6.10/conf/php.ini
552 ;date.timezone = "Europe/Berlin"
553 date.timezone = "Asia/Tokyo" 
```
日本時間になったかを確認するため、時刻表示のスクリプトを作ってブラウザに表示させてみます。

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

## 3 Mysqlの設定
1. http://localhost:8888/MAMP/?language=Japanese  で起動した画面メニューに　[ツール＞phpMyAdmin] がありますので、これをクリックする
2. phpMyAdminの画面でデータベースの作成を行う。  
データベース名：wordpress
3. ID/PWを変えておくほうがいい。

# Wordpressの設定
1. [WordPressの日本語公式サイト](https://ja.wordpress.org/)からWordPressのzipファイルをダウンロードします。
今回は WordPress:4.2.3 をダウンロートして解凍しました。

2. 実行したいドキュメントルートに回答内容をすべてコピーします。
今回は /Users/＊＊＊/Devmamp/　配下にすべてコピーします。
回答した結果がwordpressフォルダになっているので、そのままコピーしました。
実行URL：http://mamp.wp.localhost:8001/wordpress

3. WordPressをブラウザで実行すると最初に立ち上がってくる画面より、WordPressの設定していくことになります。
もし、画面からできなくても、大丈夫。
ブラウザから操作した後に作られる、wordpress/wp-config.php を開いて修正できるみたいです。
[さぁ始めましょうをクリック]で進めます。
![994abee1-8346-34cd-a227-b0cf07b58d17.png](https://qiita-image-store.s3.amazonaws.com/0/39911/2b59e148-33d1-510f-d600-f2134d57cf89.png)

4. MySqlの情報を登録する。
http://localhost:8888/MAMP/?language=Japanese　
![9120890e-9fce-17e6-b12d-289986599a8a.png](https://qiita-image-store.s3.amazonaws.com/0/39911/0e26f5f5-3924-179e-f2f0-33332de45317.png)
![スクリーンショット 2015-08-04 14.30.15.png](https://qiita-image-store.s3.amazonaws.com/0/39911/d97d3a69-0716-b782-416a-97fb90baa164.png)![9120890e-9fce-17e6-b12d-289986599a8a.png](https://qiita-image-store.s3.amazonaws.com/0/39911/19b20649-ba9d-dd50-359e-45fd54046365.png)


5. インストール実行
6. サイト名、ユーザ名、パスワードの登録
・ wpのパスワードは「強力」になるまでしておく。
・ プライバシーのチェックは公開サイトならチェックをいれないと検索エンジンにひっかからない。
　今回はlocalhostなのでチェックをはずしておく。
・ メールアドレスはインストール完了後にメールが送られるアドレスをいれる
![スクリーンショット 2015-08-04 15.03.07.png](https://qiita-image-store.s3.amazonaws.com/0/39911/544766a6-7e59-a1b0-e1c3-2fb65d12a921.png)

7. インストールの完了
![スクリーンショット 2015-08-04 15.06.41.png](https://qiita-image-store.s3.amazonaws.com/0/39911/e447db8a-56d8-5953-a6b4-01cd58c0846e.png)
・メールが送られてくる
![スクリーンショット 2015-08-04 15.07.09.png](https://qiita-image-store.s3.amazonaws.com/0/39911/4944175e-2874-b8c7-250b-da5c7ce4cab3.png)

8.ログイン画面からログインしてみる
![スクリーンショット 2015-08-04 15.22.07.png](https://qiita-image-store.s3.amazonaws.com/0/39911/df42d421-7bf8-226e-da1e-f4821a8b0db5.png)

9.ダッシュボードなる、管理画面が出た！
![スクリーンショット 2015-08-04 15.32.55.png](https://qiita-image-store.s3.amazonaws.com/0/39911/46e40454-75dc-93ab-0167-2bd64d129c32.png)

これでWordPressが使えるようになりました。
さて、インストール作業はここで完了です。