プロが教える店舗&オフィスのセキュリティ対策術

Apacheをインストールし、ApacheからPHPを使える状態にしたいです。

Apacheのインストールは、
http://www.apachelounge.com/download/から
Apache 2.4.0
httpd-2.4.0-win32.zip
をダウンロードし、c:/pg/にApache24という名前のフォルダで配置しました。
ドキュメントルートのhtmlファイルをブラウザで表示できるところまでできています。

PHPのインストールは
http://windows.php.net/download/から
PHP 5.3 (5.3.9)
Zip [14.94MB]
sha1: 4149d79a877ae7ccb0e5419b13152b5bd3074825

php-5.3.9-nts-Win32-VC9-x86.zipをダウンロードし
デスクトップにphpというフォルダを作成し、その中に全て展開しました。
展開されたphpフォルダをc:/pg/Apache24に配置しました。c:/pg/Apache24/php

PHP利用のための設定 モジュールの追加
http://www.adminweb.jp/apache/php/index1.html
を参考にするとApacheでphpを利用するためには、

Apache2.2系を使う場合は、"httpd.conf"ファイルの中の
"Dynamic Shared Object (DSO) Support"ブロックの一番最後に
次の行を追加すればよいという説明があります。
LoadModule php5_module c:/php/php5apache2_2.dll

Apache2.4系を使う場合はどのようにしたら良いのでしょうか。
展開したphpフォルダの中にphp5apacheで始まるdllファイルが存在しません。
php5apacheで始まるdllファイルを自分で用意して配置しないといけないのでしょうか。

A 回答 (5件)

スミマセン、補足です。



Windoows+Apache+PHPの場合、動作モードが3つあります。

・モジュールとして動作
 .dllが必要

・CGIとして動作
 php.exeを起動させる

・FastCGIを使用して動作
 それ用のモジュールを使用する。

参照ページを参考にして最適な動作方法を選択してください。
(それぞれ一長一短がありますので)

参考URL:http://www.php.net/manual/ja/install.windows.man …
    • good
    • 0
この回答へのお礼

アドバイス有難うございます。
PHP 5.3は諦め、PHP 5.2をダウンロードしました。
PHP 5.2 (5.2.17)
Zip [9.97MB]
sha1: 30e2e65e90cec780a42d0b7e5fed5d42bf20eb4a
を展開し、c:/pg/Apache24/phpに配置しました。

c:/pg/Apache24/phpにphp5apache2_2.dllがあることを確認。
そして、
C:/pg/Apache24/conf/http.confの167行目に
LoadModule php5_module c:/pg/Apache24/php/php5apache2_2.dllを追加しました。

#LoadModule version_module modules/mod_version.so
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
#LoadModule xml2enc_module modules/mod_xml2enc.so

     ↓↓↓↓↓↓

#LoadModule version_module modules/mod_version.so
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
#LoadModule xml2enc_module modules/mod_xml2enc.so

LoadModule php5_module c:/pg/Apache24/php/php5apache2_2.dll


Apacheを起動してみると、

C:\pg\Apache24\bin\httpd (←Apacheの起動)
httpd: Syntax error on line 167 of C:/pg/Apache24/conf/http.conf : Cannot load C:/pg/Apache24/php/php5apache2_2.dll into server: \x8ew\x92\x82\xb3\x82~~~~

C: (←Apacheが終了)

エラーが出てしまい終了してしまいます。


>Windoows+Apache+PHPの場合、動作モードが3つあります。

CGIは勉強する予定がないので、
モジュールとして動作を選択しようと思います。

お礼日時:2012/01/23 10:35

せっかくダウンロードしたのですから現物のマニュアルを見ましょう。



># Add to your httpd.conf
>
>LoadModule php5_module "c:/php/php5apache2_4.dll"
>AddHandler application/x-httpd-php .php

ダブルクオーテーション(”)が必要かもしれませんね。
    • good
    • 1
この回答へのお礼

有難うございます。
マニュアルも一応見て、
LoadModule php5_module "c:/pg/Apache24/php/php5apache2_4.dll"
の場合と、
LoadModule php5_module c:/pg/Apache24/php/php5apache2_4.dll
の両方を試してみたのですが
結果はどちらもエラーになってしまいます。

お礼日時:2012/01/23 15:39

あー、Apache側にあるのか。

なんか変だなぁとは思ったけど。
PHP側しか見てなかったよ。
    • good
    • 0
この回答へのお礼

PHP5.3.9、そのモジュールを配置し、http.confを修正しました。
質問時と同じ手順ですが、
PHPのインストールは
http://windows.php.net/download/から
PHP 5.3 (5.3.9)
Zip [14.94MB]
sha1: 4149d79a877ae7ccb0e5419b13152b5bd3074825

php-5.3.9-nts-Win32-VC9-x86.zipをダウンロードし
デスクトップにphpというフォルダを作成し、その中に全て展開しました。
展開されたphpフォルダをc:/pg/Apache24に配置しました。c:/pg/Apache24/php


そのモジュールは
http://www.apachelounge.com/download/から
php5apache2_4.dll-php-5.3.9-win32.zip
をダウンロードしてc:/pg/Apache24/phpに
php5apache2_4.dllを配置しました。

そして、
C:/pg/Apache24/conf/http.confの167行目に
LoadModule php5_module c:/pg/Apache24/php/php5apache2_4.dllを追加しました。


#LoadModule version_module modules/mod_version.so
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
#LoadModule xml2enc_module modules/mod_xml2enc.so

LoadModule php5_module c:/pg/Apache24/php/php5apache2_4.dll


しかしApacheを起動してみると前回と同じエラーになってしまいます。

C:\pg\Apache24\bin\httpd (←Apacheの起動)
httpd: Syntax error on line 167 of C:/pg/Apache24/conf/http.conf : Cannot load C:/pg/Apache24/php/php5apache2_2.dll into server: \x8ew\x92\x82\xb3\x82~~~~

C: (←Apacheが終了)

お礼日時:2012/01/23 14:57

質問者も回答者もあまりに馬鹿すぎる。


Apache2.4で使うPHP5.3用のモジュール、質問者が書いているApacheのダウンロード先に
普通に配布されている。

おまえらの眼はどこについている?
    • good
    • 0
この回答へのお礼

返事有難うございます。
すみません、気が付きませんでした。

PHP5.3.9、そのモジュールを配置し、http.confを修正しました。
質問時と同じ手順ですが、
PHPのインストールは
http://windows.php.net/download/から
PHP 5.3 (5.3.9)
Zip [14.94MB]
sha1: 4149d79a877ae7ccb0e5419b13152b5bd3074825

php-5.3.9-nts-Win32-VC9-x86.zipをダウンロードし
デスクトップにphpというフォルダを作成し、その中に全て展開しました。
展開されたphpフォルダをc:/pg/Apache24に配置しました。c:/pg/Apache24/php


そのモジュールは
http://www.apachelounge.com/download/から
php5apache2_4.dll-php-5.3.9-win32.zip
をダウンロードしてc:/pg/Apache24/phpに
php5apache2_4.dllを配置しました。

そして、
C:/pg/Apache24/conf/http.confの167行目に
LoadModule php5_module c:/pg/Apache24/php/php5apache2_4.dllを追加しました。


#LoadModule version_module modules/mod_version.so
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
#LoadModule xml2enc_module modules/mod_xml2enc.so

LoadModule php5_module c:/pg/Apache24/php/php5apache2_4.dll


しかしApacheを起動してみると前回と同じエラーになってしまいます。

C:\pg\Apache24\bin\httpd (←Apacheの起動)
httpd: Syntax error on line 167 of C:/pg/Apache24/conf/http.conf : Cannot load C:/pg/Apache24/php/php5apache2_2.dll into server: \x8ew\x92\x82\xb3\x82~~~~

C: (←Apacheが終了)

お礼日時:2012/01/23 14:57

phpのマニュアルによると、Apacheを使用する場合はまだ5.3を使用できないようです。


5.2のバイナリパッケージにはdllが存在しますのでまずはそちらで動くかどうかを確認してみてください。

参考URL:http://www.php.net/manual/ja/install.windows.man …
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!