* WinXP + Apache2 + PHP5 のローカルテスト環境構築 [#r9d6df60]
PHPスクリプトをサーバにアップロードする前に、まずローカルでテストしてみたいよね。
ということで、自PC(Windows XP)に HTTPD を入れて PHP 動作テストをする為の環境構築メモ。

** Apache2 インストール [#e0fe393d]

HTTPD は何でも良いんだけど、とりあえず標準的な HTTPD である Apache を入れる。

まず、下記サイトからダウンロード。

- [[Apache.jp:http://www.apache.jp/]]
-- [[Download:http://www.apache.jp/misc/download.html]]

KDDI Labs. の FTP から FTPクライアントで落とすのが速い。

 /infosystems/apache/httpd/binaries/win32

の中にある

 apache_2.0.x_win32_x86_nossl.msi

または

 apache_2.2.x_win32_x86_nossl.msi

というのが Windows 用のインストーラ。

どちらでも良いが、ここは 2.2 系の方をダウンロードしてみる。

ダウンロードしたら msi 実行。

ウィザード形式でインストールが進む。

サーバ情報の設定のところで、サービスとして起動するか、スタンドアロンとして一時的に起動するかの選択がある。
ここはテスト用サーバなので、スタンドアロンの方を選択しておく(サービスでも良いけど)。

- for All Users, on Port 80, as a Service -- Recommended&br;
サービスとして起動する場合はこちらを選択。
- only for the Current User, on Port 8080, when started Manually.
一時起動する場合はこちらを選択。(私はこっち)

あと、インストール先がデフォルトで "C:\Program Files\Apache Software Foundation" 下になるので、
長いパスが嫌いな人は、適当な場所に変更する。

私は長いパスが嫌いなので、例えば "C:\apache" に変更。(これは好み)

このパスを、以下 apache_path と呼ぶ。

あとは基本的に何も変更する必要は無く、ずっと「next」で OK。

インストールが終わったら、設定ファイルを編集する。

 apache_path/Apache2.2/conf

の中に、httpd.conf というファイルがあるので、これを適当なテキストエディタで開く。&br;
(「スタート」→「Apache HTTP Server 2.2」→「Configure Apache Server」を辿っても OK。)

DocumentRoot を探す。"apache_path/Apache2.2/htdocs" となっているはず。

私の場合は

 DocumentRoot "C:/apache/Apache2.2/htdocs"

となっている。このディレクトリに Web 表示するファイル諸々を置く。

この場所が気に入らなければ変更する。

私は気に入らないので、"C:\apache\wwwroot" というディレクトリを作って、これに書き換えた。

 #DocumentRoot "C:/apache/Apache2.2/htdocs"
 DocumentRoot "C:/apache/wwwroot"

このパスを、以下 www_path と呼ぶ。

ここに適当な HTML ファイルをつくって index.html という名前で保存しておく。
面倒なら Apache2.2/htdocs 下にあるファイルをそのままコピー。

あと、httpd が使うポートがデフォルトで 80 または 8080 になっているので、
これが気に入らなければ変更する。

80 が HTTP のデフォルトポートだが、これを開くと外部から予期せぬアタックを受けることが懸念される。
なので、外部に公開するのでなければ、 80 でも 8080 でもないポートに変更しておくのが安全。

私は 8081 に変更した。

 #Listen 8080
 Listen 8081

これで編集を保存して、サーバを起動してみる。

「スタート」→「Apache HTTP Server 2.2」→「Control Apache Server」→「Start Apache in Console」
を選択してサーバを起動する。黒いコンソール画面が表示されたら起動したということ。&br;
(サービスの場合は「Monitor Apache Servers」からサービスを起動する。)

この状態で適当な Web ブラウザを開いて http://localhost:8081/ にアクセスしてみる。
上でつくった www_path/index.html が表示されればインストールは成功。

** PHP5 インストール [#y3f03e33]

下記サイトから PHP5 をダウンロード。

- [[日本PHPユーザ会:http://www.php.gr.jp/]]
-- [[Download:http://www.php.net/downloads.php]]

「Windows Binaries」の「PHP5.2.x zip package」の方をダウンロード。

アーカイブを適当なディレクトリに展開する。

私は "C:\php5" というディレクトリをつくってそこに展開した。

このパスを、以下 php5_path と呼ぶ。

php5_path/php.ini-recommended というファイルを php.ini という名前に変更。
これを適当なテキストエディタで開く。

以下の変更をする。

includ_path に php5_path/PEAR を追加。

 #includ_path = ".;c:\php\includes"
 includ_path = ".;c:\php5\includes;c:\php5\PEAR"

doc_root を www_path に指定。

 doc_root = C:/apache/wwwroot

extension を php5_path/ext に指定。

 ;extension_dir = "./"
 extension_dir = "c:/php5/ext"

mbstring を有効にする。(日本語表示をするのに必須)

 ;extension=php_mbstring.dll

上記コメントをはずす。

 extension=php_mbstring.dll

default_charset を UTF-8 にする。

 ;default_charset = "iso-8859-1"
 default_charset = "UTF-8"

mbstring セクションを次のように変更する。

 [mbstring]
 mbstring.language = Japanese
 mbstring.internal_encoding = UTF-8
 mbstring.encoding_translation = Off
 mbstring.http_input = pass
 mbstring.http_output = pass
 mbstring.detect_order = UTF-8,SJIS-win,eucJP-win
 mbstring.substitute_character = none

このPHPが動作するように httpd.conf の設定を追加する。

 DirectoryIndex index.html

という設定に、.php を追加。

 DirectoryIndex index.php index.html

起動時に PHP をロードするように設定。

Apache 2.0系の場合

 LoadModule php5_module "c:/php5/php5apache2.dll"

Apache 2.2系の場合

 LoadModule php5_module "c:/php5/php5apache2_2.dll"

ファイルの最後に、次の設定を追加。

 <IfModule mod_php5.c>
    AddType application/x-httpd-php .php
    PHPIniDir "c:/php5"
 </IfModule>

("c:/php5" は php5_path )


テスト用に test.php というファイルを作成して、

 <?php phpinfo();?>

この一行だけ書いて www_path 下に保存。

Apache を再起動して、 http://localhost:8081/test.php にアクセスしてみる。

Web サーバの情報が表示されたら、PHPもインストール成功。

** 参考 [#q58e7c5b]

- [[Apache入門:http://www.adminweb.jp/apache/index.html]]
- [[Apache2 + PHP5をWindowsXPにインストール:http://puchiko.lowtech.ne.jp/?itemid=250&catid=10]]


-----
[[MLEXP. Wiki]]

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS