元ネタは[HOW TO] IIS7.0でFastCGI+PHP5環境を作ってみる - TechNet フォーラム。
ちょっと手順が違うような気がする & 自分にとってはわかりにくいような気がしましたので、ちょっとメモ。
1. IIS7 のインストール
IIS7 は Windows Vista、Windows Server2008、Windows Web Server2008 に同梱提供されています。
本格的にサーバを立てるんならたぶん Server2008 / Web Server2008 の構築を検討することになると思うんですが、とりあえず現状の私は手元ローカルで動けばいいというニーズ(動作検証用、及びローカル Web サービス用)ですので、Vista でちょろりとやっちゃおうかと。
でもって、Vista での IIS7 は、エディションによってできる / できないがびみょーに違うので、自分の持っているエディションではなにが提供されているのかもちょいと確認。
[HOW TO] IIS7.0 の提供形態 - MSDN フォーラムではWindows Vista ( Home Basicを除く )と紹介されていますが、正確にはできる / できないの 2 択で説明できるようなものではなく、機能とエディションのマトリクスで「この機能はある」「この機能はここまでの制限下でできる」「この機能はない」とひとつずつの確認が必要なようです。
このマトリクスは、IIS.net : IIS7 Features and Windows Vista Editions : Microsoft Internet Information ServicesのIIS7 Vista Edition Feature Matrixにあります ( 日本語版は見つけられませんでした… ) ので、じっくりにらんでみてもいいかもしれません。
で、IIS7 のインストール手順。
細かい話は置いといて、デフォルト機能をアクティブにしたいだけであれば、
コントロールパネルのホームから [ プログラム ] - [ Windows の機能の有効化または無効化 ] → [ ユーザーアカウント制御 ] ダイアログで [ 続行 ] → [ Windows の機能 ] ダイアログ → [ Internet Information Services ] にチェックをつけて [ OK ] 。
2. モジュールの入手
まずは PHP5 バイナリ。
PHP: Hypertext Preprocessorから辿ってダウンロード。私が入手したバージョンは 5.2.5 のWindows Binary ( zip ) 。
どこに展開してもいいようですが、とりあえず今回はC:\fcgi\php5以下にディレクトリ構造を保持した形で展開。
次、IIS7 で CGI を高速化する FastCGI。
なくても動くみたいですし、高速化の手法がプロセスの常駐ですので、動作検証環境にはなくてもいいのかもしれませんがまあいいや。
IIS.net : FastCGI for IIS7 : Download : Microsoft Internet Information Servicesからダウンロード。
これもどこに展開してもいいようですが、とりあえず今回はC:\fcgi以下にディレクトリ構造を保持した形で展開。
3. FastCGI のインストール
コマンドプロンプトを「管理者として実行」で開き、
cd c:\fcgi
c:
fcgisetup.exe /install /add c:\fcgi\php5\php-cgi.exe php
元ネタでは FastCGI をインストールしてから PHP バイナリを入手するという順番で説明されていますが、先に入手 → 展開しておかないと、エラーが出て失敗しますのでご注意。
4. PHP5 の設定
php.ini-dist を php.ini-dist にリネームコピー、中の extension_dir を 「c:\fcgi\php5\ext」に変更。
以上で完了っす。
私も場合はもともと実際に動作させる PHP モジュールがありますので、そっちの動作を確認しておしまい。
とりあえず確認したい、という方は元ネタの 7. 以降を実行するといいですね。