WindowsのIISでphpリクエストを処理する
PHP をIISで使う場合は、PHP 5.3 VC9 Non Thread Safe あるいは PHP 5.2 VC6 Non Thread Safe を選びます。(推奨されています)
こちらよりダウンロードします。C:¥phpに保存したとします。
C:¥php¥php.iniをfastcgiで処理できるように編集します。
編集は以下のとおりです。

fastcgi.impersonate = 1
fastcgi.logging = 0
cgi.fix_pathinfo=1
cgi.force_redirect = 0
次に、Microsoft FastCGI Extension for IIS 5.1 and 6.0をダウンロードしてインストールします。32 ビット版と 64 ビット版があるので、 環境にあわせて適切なパッケージを選んでください。
IISがインストールされてないと、正常にインストールできません。
インストールが終わると、コマンドプロンプトから以下を実行します。

cscript %windir%¥system32¥inetsrv¥fcgiconfig.js -add -section:"PHP" 
 -extension:php -path:"C:¥PHP¥php-cgi.exe"
※1行で書いてください
実際は、C:¥WINDOWS¥system32¥inetsrv¥fcgiext.iniに以下を追加しているのと、IIS6のアプリケーションマッピングにphpとC:\WINDOWS\system32\inetsrv¥fcgiext.dllをマッピングしているだけです。

[Types]
php=PHP

[PHP]
ExePath=C:¥PHP¥php-cgi.exe
ただ、手動でさわると面倒なので追加は上記のコマンドでやったほうが良いです。
おかしくなったらRemoveします。

cscript %windir%¥system32¥inetsrv¥fcgiconfig.js -Remove -section:"PHP"
正常に追加、削除できた場合は、INI successfully written.と表示されます。
これでphpファイルにアクセスすると正常に表示されます。
エラーが出る場合は、Could not find entry for "php" on site 1 in [Types] section.などと出るようです。

Back to top

Information