整理中:Windows VistaでPHPの開発
Update: 2009-06-05
この記事を書いた後に Zend Server や XAMPP などを知りました。この記事のように個別に入れるよりこれらのパッケージを利用する方が楽です。 ( 参照 : Zend Server CE / Zend Framework / PHPのデバッグができる環境 )
以前 Windows で PHP の開発 に Apache, MySQL, PHP のインストール手順を書いたのですが、 Vista でうまくいかないという話を聞いて自分でも試してみました。 今回は PHP のソースや MySQL の文字コードを EUC-JP にします。
手順の中で Webブラウザで確認するところがありますが、必ず表示を最新にしてください。 IE の場合 [F5]
キー、 FireFox の場合 [Ctrl]
を押しながら [R]
です。
Apache のインストール
http://httpd.apache.org/download.cgi から Windows 用のインストーラ apache_2.2.11-win32-x86-openssl-0.9.8i.msi
をダウンロードしました。インストーラの指示に従ってインストールすればいいのですが、設定をデフォルトから変えた箇所は次の通りです。
ドメイン、ホスト名、管理者パスワードに適当な値を入れます。本番環境ではないので、てきとーです。
インストール先を C:¥site¥Apache2.2
にしました。 C:¥Program Files
の下だと何かと面倒だからです。
インストールが完了したら、 http://localhost/
で “It works!” と表示されるのを確認します。また、画面の右下にサービスアイコンが表示されるので、サービスの停止や開始が正常にできることを確認します。 Apache の古いバージョンでは、 Visita でこのアイコンによるサービスの制御ができないことがありました。その場合は、「コントロールパネル」-「管理ツール」-「サービス」を使ってください。
PHP のインストール
http://www.php.net/downloads.php#v5 の "Windows Binaries" から、 "PHP 5.2.9-2 installer" をダウンロードします。
インストール先は C:¥site¥PHP
にしました。
Web サーバは Apache2.2 を選択します。
Apache の設定ファイルのフォルダは C:¥site¥Apache2.2¥conf
です。
すべてのオプションを選択します。選択肢が灰色ではな白になっていることをよく確認してください。マルチバイト文字列 ( mbstring ) 対応などをインストールしないと、日本人でなくても困ります。
インストールが完了したらファイル C:¥site¥Apache2.2¥conf¥httpd.conf
の
#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
ScriptAlias /php/ "C:/site/PHP/"
Action application/x-httpd-php "C:/site/PHP/php-cgi.exe"
PHPIniDir "C:/site/PHP/"
LoadModule php5_module "C:/site/PHP/php5apache2_2.dll"
PHPIniDir "C:/site/PHP/"
LoadModule php5_module "C:/site/PHP/php5apache2.dll"
PHPIniDir "C:/site/PHP/"
LoadModule php5_module "C:/site/PHP/php5apache.dll"
#END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
を、次のように変更します。
#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
PHPIniDir "C:/site/PHP/"
LoadModule php5_module "C:/site/PHP/php5apache2_2.dll"
#END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
このように変更して余計な設定を削除しないと、 Apache 再起動時にエラーが発生して起動できなくなります。
次に、ファイル名無しの URL 指定で index.php
を表示するよう設定変更します 。C:¥site¥Apache2.2¥htdocs¥index.html
のファイル名を C:¥site¥Apache2.2¥htdocs¥index.php
に変えます。その後 http://localhost/
を表示します。設定変更前は次のように表示されるか、エラーになるかどちらかです。
Index of /
index.php
ファイル C:¥site¥Apache2.2¥conf¥httpd.conf
の
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
を、次のように変更します。
<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>
Apache を再起動したら、 http://localhost/
で “It works!” と表示されるのを確認します。
最後に、PHPで文字コード EUC-JP を使うための設定をします。 C:¥site¥PHP¥php.ini
の [mbstring]
の設定内容を次のようにしてください。インストールしたままの状態では、たぶん、これらの行はコメントアウトされていると思います。
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = EUC-JP
mbstring.encoding_translation = Off
mbstring.detect_order = auto
mbstring.substitute_character = none
MySQL のインストール
http://dev.mysql.com/downloads/ の "MySQL Community Server | Download » " から Windows MSI Installer (x86) をダウンロードしました。 MySQL のプログラムのインストールの完了時に次の画面が出ます。チェックを On にしたまま Finish ボタンを押すと、データベースを設定するウィザードが起動します。
文字コードは ujis を選択してください。これが EUC-JP です。
ユーザ root
のパスワードを設定してください。本番環境では強いパスワードにしてください。開発環境でも、「パスワード無しはあり得ない」という前提で作られたツールがあると思うので、必ず設定してください。
phpMyAdmin のインストール
http://www.phpmyadmin.net/home_page/downloads.php から phpMyAdmin-3.1.5-all-languages.zip
をダウンロードしました。それを解凍して C:¥site¥Apache2.2¥htdocs¥phpMyAdmin
に置きました。
設定ファイルのサンプルは C:¥site¥Apache2.2¥htdocs¥phpMyAdmin¥config.sample.inc.php
です。これをコピーして C:¥site¥Apache2.2¥htdocs¥phpMyAdmin¥config.sample.inc.php
を作ります。
設定ファイルの次の値に適当な、本当にてきとーな値を入れます。
$cfg['blowfish_secret'] = 'slkfak2ok0lajsdfnwidlv';
サーバの名称は通常 localhost
でいいのですが、レンタルサーバ等の場合、違う名称にしなければならないことがあります。そのときは次の値を変更してください。
$cfg['Servers'][$i]['host'] = 'localhost';
http://localhost/phpMyAdmin/
を表示して、ユーザ root
で正常にログインできれば確認完了です。パスワードは MySQL のインストール時に設定したパスワードです。