Windowsサーバ + IIS6 + PHPなど、双子パパが日々技術的に問題になった事、その解決方法について書いていきます。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
TOPスポンサー広告スポンサーサイト

Windowsサーバ + IIS6 + PHP

Windows 2003 Server(64bit)に、IIS 6.0(64bit)にPHPを入れた時のはまり記録です。

 

まず、

PHPダウンロードどれを選べばいいのか分からず固まる。

5.2/5.3 VC9/VC6 zip/Installer Thread Safe/Non Thread Safe

どれだけ組み合わせがあるんだ。それなのに64bitはない不思議。

 

いろいろ調べて、IISではVC6+Non Thread Safeらしいということで5.3/VC6/Installer/Non Thread Safeを選択。ところが、InstallしてIISから設定(ホームディレクトリの構成からphp-cgi.exeを選択)したところ、全く動かず。

 

どうやら、php5isapi.dllというファイルが必要らしい。5.3にはないので5.2.1.4をダウンロード、ここにもない。5.2.1.4の4を3に変えてダウンロードするとようやく発見!

 

そしてまたIISの設定。今度はphp5isapi.dllを選択して、<? phpinfo(); ?>と書いたスクリプトを実行すると、Server Unavailableみたいなエラー。

 

詳細のメッセージを出すために、IEのインターネットオプションの「詳細設定」タブにあるブラウズ-「HTTPエラーメッセージを簡易表示する」のチェックを外す。

 

そして再実行すると、「%1は有効なwin32アプリケーションではありません。というエラー。」

 

今度は英語のページを調べてみると(日本語に答えがない場合は英語で探します)、最新のPHPには64bitがないので、IISも32bitで動かす必要があるとの事。

 

以下のおまじないコマンドを実行

cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1

 

Webサービス拡張プロパティでphp許可(php5isapi.dll)、Active Server Pages許可、Webサイトのプロパティ→ホームディレクトリタブ→構成:マッピングの設定から、拡張子phpにphp5isapi.dllでGET,POST,HEAD,TRACEを設定してやっと動きました。

 

長い一日でした。

TOPWindowsWindowsサーバ + IIS6 + PHP

このエントリーにお寄せ頂いたコメント

このコメントは管理人のみ閲覧できます
at 2012/03/21(水) 19:45 |

URL:
コメント:
 

スポンサードリンク

Copyright © 双子パパのエンジニア記録 All Rights Reserved.
ほったらかしでも稼げるFC2ブログテンプレート [PR]
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。