Microsoft IIS / PWS

この章では、IIS (Microsoft Internet Information Server) に関する 注意やヒントを取り上げます。

警告

CGI としてセットアップすると、サーバは様々な攻撃を受ける可能性があります。 これらの攻撃からサーバを守る方法については、 CGI セキュリティ のセクションを参照してください。

IIS あるいは PWS で PHP を使用する際に、一般的に考慮すべき点

Windows NT/200x/XP 上の IIS 4 以降

PHP は、CGI バイナリあるいは ISAPI モジュールのいずれかの形式で インストールされていることでしょう。いずれにしても、まず 「マイクロソフトマネージメントコンソール」 (Windows NT 4.0 オプションパック環境では「インターネット サービスマネージャ」、Windows 2000/XP では コントロールパネル=>管理ツールにあります) を起動する必要があります。 次に、Web サーバノード (たいていは「既定の Web サイト」と表示されています) 上で右クリックし、「プロパティ」を選択します。

CGI バイナリを使う場合は、次のようにしてください。

ISAPI モジュールを使う場合、次のようにしてください。

IIS 6 (2003 Server) の場合は IIS マネージャを開き、「Web サービス拡張」に 移動し、「新しい Web サービス拡張を追加」を選択し、たとえば「PHP」などと 拡張名を入力し、「追加」ボタンを押して ISAPI ファイル (php4isapi.dll または php5isapi.dll) あるいは CGI (php.exe または php-cgi.exe) を選択し、「拡張の状態を許可済みに設定する」をチェックして「OK」ボタンを クリックします。

デフォルトのページとして index.php を使用するには 以下のようにします。 (訳注:「既定の Web サイト」のプロパティダイアログで) 「ドキュメント」タブを選択し、「追加」を選択します。そこで index.php と入力し、「OK」をクリックします。 「上に移動」や「下に移動」を使用して順番を調整します。 これは Apache での DirectoryIndex の設定と同じです。

上記の手順を PHP スクリプトに関連づけたい拡張子ごとに繰り返してください。 一般的な拡張子は .php ですが、 古いアプリケーションでは .php3 が必要な場合があります。

CPU 使用率が 100% となる場合は、IIS の設定「ISAPI アプリケーションをキャッシュ」をオフにしてください。

Windows 上の PWS 4

PWS 4 は ISAPI をサポートしていません。PHP CGI のみが使用可能です。

Windows 上の PWS/IIS 3

PWS/IIS 3 サーバを設定するには、配布ファイルに含まれる REG ファイル (SAPI フォルダの pws-php4cgi.reg が PHP 4 用、 メインフォルダの pws-php5cgi.reg が PHP 5 用) を使用することを推奨します。 このファイルを編集し、拡張子および PHP インストールディレクトリを自分用の設定に 調整することが可能です。さもなくば、以下の手順により、手動でこの設定を行うことも可能です。

警告

以下の手順では Windows レジストリに対して直接変更を加えます。 ひとつでも間違えると、システムが不安定になる可能性があります。 レジストリのバックアップをとることをを強く推奨します。 PHP 開発チームは、レジストリが損傷した場合の責任を負いません。

以下の手順は、Web サーバのインストールに影響を与えるものではなく、 PHP スクリプトをコマンドライン (例:「ファイル名を指定して実行」で C:\myscripts\test.php を入力するなど) やダブルクリックで実行させたい場合にのみ行ってください。 ダブルクリックした際にテキストエディタに読み込まれるままとしたいのなら、 以下の手順はスキップしてください。

ここまでの作業で、PWSおよび IIS 3用のシステムインストールは完了しました。 IIS 3 用の良くできた 設定ツール が Steven Genusa により 配布されており、これを使用してスクリプトマッピングを設定することができます。