Webで最も人気のある開発プラットフォームの1つはPHPで、これはFacebook、WordPress、Joomlaなどの多くの人気のあるアプリケーションやサイトを強化しています。 これらのシステムのほとんどは、Apache Webサーバーを実行するLinuxシステムで使用するように「設計」されていますが、Windows Server 2008システムのIIS 7を介してPHPアプリケーションをデプロイできます。

PHPの構成

WindowsでPHPコードを実行するには、PHPバイナリファイルをシステムにコピーする必要があります。 インストールは必要ありませんが、正しく実行するためにいくつかの構成を行う必要があります。 最初のステップは、PHP Windowsバイナリをダウンロードして抽出することです(つまり、「C:PHP」)。 IIS 7の場合、非スレッドセーフバイナリを使用する必要があります。

画像

抽出したファイルから「php.ini-production」ファイルをコピーして、Windowsディレクトリに貼り付けます。 Windowsディレクトリで、このファイルの名前を「php.ini」に変更します。

画像

「php.ini」ファイルをメモ帳で開き、必要に応じて構成します。 コピーしたプロダクション構成は、PHPチームがプロダクションサーバーに適していると感じられるようにあらかじめ設定されています。 IIS 7システム用にPHPを構成するために必要な変更がいくつかあります。

  • コメントを外してキーを設定cgi.force_redirect = 0キーをコメント解除して、fastcgi.impersonate = 1キーを削除し、キーを設定します。extension_dirは、PHPの抽出先のパス(「C:PHPext」)の「ext」フォルダに設定します。 キーdate.timezoneをサーバーのタイムゾーンに設定します(このキーの上にある行のURLには、受け入れられる値がリストされています)。

この時点で、Windowsシステムは 'php.exe'ツールを使用してコマンドラインからPHPスクリプトを実行できます。

FastCGIを実行するためのIIS 7の構成

インターネットインフォメーションサービス(IIS)7には、インストールパッケージの一部としてFastCGIフレームワークが含まれています。 IIS 7インストールで有効になっていることを確認するには、サーバーマネージャー>役割> Webサーバーで役割サービスを確認します。

画像

「アプリケーション開発」セクションの下に「CGI」オプションがインストールされていることを確認します。 そうでない場合は、この機能を有効にして、IIS 7インストールを更新します。

画像

IISを設定したら、IIS 7管理パックをインストールします。 「標準」設定を使用しない場合は、「FastCGI」オプションをインストールするように設定していることを確認してください。 このパッケージは、IISマネージャー内にFastCGI構成インターフェイスをインストールします。

画像

FastCGIを介してPHPを実行するためのIISの構成

IIS 7に必要なすべての機能を設定したら、PHPを実行するように構成するだけです。 まず、「FastCGI設定」オプションでPHPと連携するようにFastCGIを構成します(この機能はIIS 7管理パックの一部としてインストールされます)。

画像

FastCGI設定画面で、アプリケーションを追加します。

画像

PHP Windowsバイナリを抽出したフォルダにある「php-cgi.exe」実行可能ファイルへのパスを設定します。 さらに、「InstanceMaxRequests」をデフォルト(5000など)より大きい値に変更します。 「EnvironmentVariables」設定の下で、省略記号ボタンをクリックして追加のオプションを構成します。

画像

「PHP_MAX_REQUESTS」という名前の新しい変数を追加し、値を上記の「InstanceMaxRequests」設定と同じ量に設定します。

画像

IISマネージャーのメイン画面に戻るまで、すべての設定を適用します。

次に、「ハンドラーマッピング」で構成されているIISによるPHPスクリプトの実行方法をマップする必要があります。

画像

ハンドラーマッピングで、新しいモジュールマッピングを追加します。

画像

モジュールのリクエストパスを、モジュールインターフェイス「FastCgiModule」を使用してPHPファイル(* .php)に設定します。 上記のFastCGI設定で構成されたものと同じファイルに実行可能ファイルを設定します。 PHPなどのわかりやすい名前をこのマッピングに割り当て、[OK]をクリックします。

画像

確認プロンプトが表示されたら、「はい」と答えて、PHPをFastCGIアプリケーションとして実行することを確認します。

画像

すべての変更を適用し、IISを閉じて再起動して、新しい設定を有効にします。

画像

これが完了すると、IIS 7で実行する場合のPHPのいくつかの問題に対処するMicrosoftホットフィックスが利用可能になります(リンクセクションでリンクが利用可能です)。これらはFastCGIを通じてPHPが正しく機能するように、Webサーバーにインストールする必要があります。

PHPのテスト

この時点で、サーバーは準備ができていますが、確認するために、IISを介してPHPの設定をかなり簡単に確認できます。 ディレクトリ「C:Inetpubwwwroot」に「phpinfo.php」という名前のテキストファイルを作成します。

画像

最後に、サーバーのアドレス「http://localhost/phpinfo.php」を参照すると、PHP情報ページが表示されます。 ページが正常に読み込まれると、PHPがマシン上で稼働します。

画像

結論

PHPをWindowsシステムで稼働させたら、利用可能な多数のPHPベースのアプリケーションを利用したり、独自のアプリケーションを開発してデプロイしたりできます。

リンク集

PHP Windowsバイナリをダウンロード(スレッドセーフではない)

IIS 7管理パックをダウンロードする

IIS 7 FastCGI(x86 / x64)用のPHPホットフィックスをダウンロード