2010年07月15日

Win2003/Apache2.2.15/PHP5.2.13、犯人は?

IISでPHPって話はどこへやら。apacheでOK、ってことだそうで、普通にセットアップ作業を行ってます。


ですが、Apache2.2.15/PHP5.2.13をインストールしたところApacheが起動せず、
エラーを吐くようになりました。

Apacheをインストールした直後ではApacheは普通に起動して問題なく動作しています。
この組み合わせ、Win2008ではちゃんと動いています。

ApacheかPHPのどっちかの問題(・・・もしくはWin2003?)でしょうね。



画面に表示されるエラーメッセージは


The requessted operation has failed!


で、イベントログにはアプリケーションエラーとして


エラー発生アプリケーション httpd.exe、バージョン 2.2.15.0、エラー発生モジュール php5ts.dll、バージョン 5.2.13.13、エラー発生アドレス 0x000nnnn


と出力されてました。
あと、エラーログには


[crit] (OS 6)ハンドルが無効です。  : master_main: create child process failed. Exiting.


と。


・・・原因がさっぱりわからないです。
PHPはインストーラでインストールしていますが、PATH等を確認して見る限りで、
設定に問題はなさそうだし。


で、バージョンの組み合わせを変えてみました。


Apache2.2.15/PHP5.2.13 = ×(最初の組み合わせ)
Apache2.2.15/PHP5.2.12 = ×
Apache2.2.14/PHP5.2.12 = ×
Apache2.2.14/PHP5.2.9 = ○


SOAPのバグが改修されてるPHP5.2.9ではちゃんと動いたんで、これで動かすことにします。


なんで?という疑問は解消されていないんでキモチ悪さが残ってますけどね。

posted by しげ at 17:02| Comment(0) | TrackBack(0) | PHP | このブログの読者になる | 更新情報をチェックする

2010年07月14日

WindowsServer2003のIIS6でPHP5を動かす

うちのとあるシステムと別会社のとあるシステムを1つのサーバで動かすことになりました(※)。

うちはApache2.2/PHP5(Ethna2.3)/PostgreSQL8、別会社はIIS6,7/.NET2.0/SQLServer2005。

ApacheをIISに置き換えれば1つのサーバじゃ動かないことではないんで
IIS6でPHPを動かしてみることにしました。


セットアップ方法ですが、オフィシャルを含めていくつかサイトをチェックしても
どれが正解なのかよく判ってません。

正しい方法ではないかもしれませんが、うちの環境ではこうやれば動きました。。。
要点のみ記載します。

■PHPインストール
Web Server Setupでは IIS ISAPI module を選択。

■IISの設定
・Web サービス拡張で以下のWebサービス拡張を追加。
拡張名:PHP(←任意)
必要なファイル:php5isapi.dll

・上記のWebサービス拡張を許可。

・サイトのプロパティ、ホームディレクトリタブで構成ボタンを押下して、
 アプリケーションの拡張子マッピングを追加

実行可能ファイル:php5isapi.dll
拡張子:php
動詞:GET,POST

・Windows\system32フォルダへphp5ts.dllをコピー
 (↑これは必要かどうか未確認)

■その他の設定
・PHP、PEARなどのライブラリの実行権限をIISのユーザに付与
・Ethnaで作ったアプリのフォルダの権限を設定
・php.iniはPHPをインストールしたフォルダのphp.iniが使われている。
 変更時には再起動が必要



ラベル:IIS6 php5
posted by しげ at 14:55| Comment(0) | TrackBack(0) | PHP | このブログの読者になる | 更新情報をチェックする
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。