第1回WordPressお茶会 – WordBench香川 – MAMPの環境設定(ドキュメントルートの確認)

MAMPのインストールが完了したのでローカルサーバ環境を構築できるようになりました。
実際にサーバを起動してサンプルを用い表示確認をしてみたいと思いますが、その前にドキュメントルートについて説明しておきます。

ドキュメントルート(Document Root)について

標準でHTMLやPHPファイルを入れる場所は /Applications/MAMP/htdocs となり、このフォルダを ドキュメントルート(Document Root)と呼びます。
レンタルサーバによって異なりますが “example.com/public_html/” や “www/htdocs/”に当たる部分と考えて頂ければいいと思います。
ドキュメントルートに保存したファイルへのアクセスはブラウザから http://localhost/ または http://127.0.0.1/ となります。

現在のドキュメントルートの場所は MAMPコントロールパネル > 環境設定 > Apacheタブ から確認できます。

では実際に表示を確認したいと思います。
以下のソースを /Applications/MAMP/htdocs/ に保存し、http://localhost/sample.php にアクセスすると “Hello WordPress” の表示が確認できると思います。

[sample.php]

	<?php
		echo "Hello WordPress";
	

ドキュメントルートまとめ
ブラウザのリクエストURL http://localhost/sample.php
コンテンツの保存先 /Applications/MAMP/htdocs/sample.php

実習では /Applications/MAMP/htdocs/ 以下にフォルダを作成してそのフォルダを1つのウェブサイトとしてWordPressを構築していきます。

ただ、このままでは以下の様にサブディレクトリ形式となり、独自ドメインでの運用を想定した時に違和感を感じてしまいます。

ウェブサイトhoge http://localhost/hoge/
ウェブサイトhuga http://localhost/huga/

そこでバーチャルホストの設定をして以下の様に独自ドメインでの運用と同様のURLでアクセスできるようにしたいと思います。

ウェブサイトhoge http://hoge/
ウェブサイトhuga http://huga/

バーチャルホストの設定

バーチャルホストという用語は、1 台のマシン上で (www.company1.com and www.company2.com のような) 二つ以上のウェブサイトを扱う運用方法のことを指します。 バーチャルホストには、各ウェブサイトに違う IP アドレスがある 「IP ベース」と、それぞれの IP アドレスに 複数の名前がある「名前ベース」とがあります。 複数のサイトが物理的に同じサーバで扱われている、ということはエンドユーザには 明らかではありません。
Apache バーチャルホスト説明書

上記引用の通りバーチャルホストは1台のマシン上で複数のウェブサイトを扱う運用方法です。今回は「名前ベース」の手法を用い、127.0.0.1(ループバックアドレス:ネットワーク上における自分自身の仮想的なアドレス)に複数のホスト名を設定したいと思います。

編集が必要なファイルは以下2つ、hosts ファイル(IPアドレスとホスト名の対応を記述したテキストファイル)と httpd.conf(Apacheの設定ファイル)です。

  • /private/etc/hosts
  • /Applications/MAMP/conf/apache/httpd.conf

また、前提として /Applications/MAMP/htdocs/ に wbkagawa フォルダを作成、先ほどの sample.php を index.php にリネームし wbkagawa フォルダに移動、http://wbkagawa/ でこれが閲覧できるように設定します。

hosts ファイル

“メニューバーの移動 > フォルダへ移動…”、 /etc/ と入力して「移動」をクリック。

etc フォルダ内に hosts ファイルがあるのでテキストエディタで開きます。
“127.0.0.1 wbkagawa”を追加して上書き保存で hosts ファイル編集完了です。

[hosts]

		127.0.0.1		localhost
		127.0.0.1 		wbkagawa
		255.255.255.255 broadcasthost
		::1 			localhost
		fe80::1%1o0 	localhost
		

httpd.conf

テキストエディタで httpd.conf を開き一番下に以下ソースを追加します。

[httpd.conf]

		NameVirtualHost *:80
	
		<VirtualHost *:80>
		DocumentRoot "/Applications/MAMP/htdocs/"
		ServerName localhost
		</VirtualHost>
		
		<VirtualHost *:80>
		DocumentRoot "/Applications/MAMP/htdocs/wbkagawa/"
		ServerName wbkagawa
		</VirtualHost>
		

1行目の NameVirtualHost ディレクティブは名前ベースのバーチャルホストを用いる時に必要で、バーチャルホストのためのIPアドレスを指定しています。
今回はすべてのIPアドレスを受け入れ80ポートを指定しています。
NameVirtualHost ディレクティブ

3-6,8-11行目で、扱うホスト名に対して VirtualHost を作成しています。 VirtualHost ディレクティブの引数は NameVirtualHost ディレクティブで指定した引数 *:80 に正確に合っている必要があ ります。
そして VirtualHost の中に各ホスト名に関しての設定を記述しています。
設定項目は最低限必要な、どのホスト名が扱われるかを示す ServerName ディレクティブ(hosts ファイルで設定したホスト名)、そのホスト名のドキュメントルートの場所を示す DocumentRoot ディレクティブとなります。

また、既存サーバにバーチャルホストを設定するとメインホストがなくなるため、1つ目の VirtualHost で再定義しています。
名前ベースのバーチャルホスト

MAMPコントロールパネルからサーバを再起動して、ブラウザで http://wbkagawa/ へアクセスすると “Hello WordPress” の表示が確認できると思います。

以上でサーバ環境は整いましたがデフォルトのMAMPの設定では外部からアクセス可能のままですので次はMAMPの環境設定(外部からのアクセス制限設定)を行なっていきます。

第1回WordPressお茶会 – WordBench香川 – MAMPのインストール

MacでWordPressが動作する環境を構築するためにMAMPを導入します。
MAMPは”Mac – Apache – MySQL -PHP”の略でApache、MySQL、PHPが一括してインストールできるソフトです。

MAMPのダウンロードはMAMPのサイトより、「MAMP:One-click-solution for setting up your personal webserver」の下の「Download Now」から開始してください。

MAMP_MAMP_PRO_2.0.5.zipのダウンロードが完了しました。(記事投稿現在のバージョン)

解凍するとMAMP.pkgが出てくるので実行してMAMPをインストールしていきます。

MAMPのインストーラが起動するので「続ける」をクリック。

大切な情報を読んで「続ける」をクリック。

使用許諾契約を読んで「続ける」をクリック。

ソフトウェア使用許諾契約で「同意する」をクリック。

インストール内容を変更したいので「カスタマイズ」をクリック。

MAMP PROは必要ないのでチェックを外して「インストール」をクリック。

この際、Mac側にソフトウェアインストールの許可を求められると思うのでroot権限パスワードを入力して「ソフトウェアをインストール」をクリック。

以上でMAMPインストール完了です。お疲れさまでした。

/Applications/MAMP/MAMP.app から起動できます。

MAMPを起動するとコントロールパネルが開くと同時にスタートページが立ち上がります。

スタートページの各タブについて簡単に解説。

Start
MAMPスタートページへ移動
phpinfo
現在のPHPの設定を表示
XCache
PHPアクセラレータXCacheの管理画面
phpMyAdmin
MySQL管理ツールphpMyAdmin管理画面
SQLiteManager
データベース管理ツールSQLiteの管理画面
FAQ
MAMPヘルプです。
Try MAMP PRO
MAMP PROサイトへ

次はMAMPの環境設定(使用ポートの変更)を行なっていきます。

第1回WordPressお茶会 – WordBench香川 – XAMPPの環境設定(セキュリティ設定)

デフォルトでは外部からアクセスできる状態なのでセキュリティの設定を行います。
ブラウザで http://localhost/ にアクセスすると以下のような言語選択画面になるので日本語を選択。

XAMPPのトップページです。ナビゲーションから「セキュリティ」ページへ移動。

現在のセキュリティ・ステータスが表示されています。
対策が必要なのは上記3つに関して。4つ目の「PHPは”safe mode”で起動していません。」は記載にある通り幾つかの重要な機能が動作しなくなるのでこのままにしておきます。
下2つに関しては使用しない機能なので今回は無視。
それではセキュリティ・ステータステーブル下部の修正ツールより対策を行なっていきます。

まずMySQLデータベースにroot権限でアクセスする際のパスワードを設定します。

  1. 任意のパスワードを入力
  2. cookieを選択(デフォルトのまま)
  3. チェックを入れる
  4. 「パスワードを変更しました。」をクリック。

※これによりphpMyAdminにログインする際にroot権限に対するパスワードを求められるようになりますのでphpMyAdmin利用の際はここで設定したパスワードを入力してください。

「rootのパスワードが変更されました。設定を有効にするために、MySQLを再起動してください。」と出てくるけどこのままXAMPPのディレクトリ制御設定を行います。

XAMPPのディレクトリ制御設定を行います。

  1. 任意のユーザ名、パスワードを入力
  2. チェックを入れる
  3. 「安全なXAMPPディレクトリを作成してください。」をクリック。

※次回 http://localhost/ にアクセスする際にユーザ名、パスワードが求められますのでここで登録したものを入力してログインしてください。

以下のメッセージが出れば成功です。

XAMPPコントロールパネルでApache、MySQLを再起動し再度セキュリティページへ移動してください。
上3つのセキュリティ・ステータスが「安全」になりました。

以上でセキュリティ設定は完了です。
次はPHP環境設定を行なっていきます。