Windows XP と Windows Server 2003 で PHP5 を動かす

IIS 7 ( Windiws Server 2008, Windows Vista ) より FastCGI が機能の一部として搭載され、PHP アプリケーションをより簡単に効率よく実行できるようになりました。

このような背景もあり、FastCGI は、Windows Server 2003 や Windows XP といった Old Windows では動作しないと思われがちですが、そうではありません。

FastCGI には、IIS 6.0 ( Windows Server 2003 ) と IIS 5.1 ( Windows XP ) 用のモジュールが用意されており、これを使用することで、前出の 2 つの Old Windows 上でも PHP アプリケーションを効率よく実行することができます。

Old Windows 上の Old IIS に FastCGI をインストールするには、Web Platform Installer を使用することがもっとも簡単で確実な方法ですが、なんらかの事情により WebPI が使用できない方もいらしゃると思います。

今回はそのような状況を鑑み、IIS 6.0、IIS 5.1 に手動で FastCGI をインストールし、PHP アプリケーションを動作させるまでの手順を紹介します。

準備

FastCGI のインストール msi と、PHP のランタイムを以下の URL から入手してください。

FastCGI for IIS
https://www.iis.net/download/FastCGI

PHP For Windows: Binaries and sources Releases
https://windows.php.net/download/

ダウンロードするファイルは VC9 x86 Non Thread SafeZip 形式のファイルが良いでしょう。FastCGI はプロセスモデルで動作するので、スレッド管理をしない高速に動作するほうの PHP ランタイムを使用できるのです。

PHP ランタイムは、ダウンロードしたら中身を適当なフォルダに解凍します。

次に、ランタイムを解凍したフォルダに対し、ローカル ユーザー アカウント IUSR_マシン名 に “読み取り” の権限を付与 (※) します。

(※) Windows XP ドメインに参加させずに使用している場合、フォルダのプロパティダイアログボックスに [セキュリティ] タブが表示されずアクセス権が設定できない場合があります。その場合は、Windows の [コントロール パネル] から [フォルダ オプション] を起動し、[表示] タブ内のリストで [エクスプローラーに簡易フォルダ表示を使用する] のチェックを外してください。

 

FastCGI セットアップ msi ファイルの実行

ダウンロードした FastCGI セットアップ用のファイルを以下の手順で実行します。

  1. コマンドプロンプト をオープンします。

  2. CD コマンドを使用して、作業ディレクトリをダウンロードした FasiCGI の msi ファイル (fcgisetup_1.5_rtw_x86.msi ) に変更します。

  3. 以下のコマンドを実行します。

    msiexec /I fcgisetup_1.5_rtw_x86.msi
  4. インストールウィザードが表示されるので、ガイダンスに従い [Next] ボタン、[Finish] ボタン、[Install] ボタンをクリックし、ウィザードを完了します。

  5. コマンドプロンプトでから CD コマンドを使用して C:\windows\system32\inetsrv に作業ディレクトリを変更します。

    cd C:\windows\system32\inetsrv
  6. 以下のコマンドを実行します。

    cscript fcgiconfig.js -add -section:"PHP" -extension:php -path:"ダウンロードした php ランタイムの php-cgi.exe までのパス"

以上で FastCGI のインストールと、PHP ランタイムの指定は完了です。

 

PHP アプリケーションの動作テスト

以下の手順で PHP のコードが正しく実行できるか確認します。

  1. テキストエディタを起動して以下のタグを記述し、info.php という名前を付けて保存します

    <?php phpinfo(); ?>
  2. パス %system drive%\inetpub\wwwroot の下に phpApp という名前でフォルダを作成します

  3. 作成したフォルダ phpApp に ファイル info.php を配置します。

  4. Web ブラウザから以下の URL にアクセスし、PHP ランタイムの情報画面が表示されることを確認します。

    https://localhost/phpApp/info.php

    image

なお、より詳細な情報、インストールスクリプト ( fcgiconfig.js ) を使用しない、完全なる手動での方法につきましては、以下のドキュメントを参照してください。(※というか、ブログの記事をほぼ書き終えたところで、このような詳しい日本語のドキュメントがあることを知った…….Orz )

FastCGI を使用した IIS 6 での PHP アプリケーションのホスト
https://technet.microsoft.com/ja-jp/library/ff454028.aspx

 

お近くにバージョンアップの予定のない Old Windows マシンがありましたら FastCGI + PHP + OSS Web アプリケーションで、新たな役割を加えてみるのもいいかもしれませんね。

もっとも、その場合は WebPI を使用したほうが圧倒的に便利なワケですが…。

Real Time Analytics

Clicky