PHPをインストールして、Windows ServerのIISでPHPが動作するよう設定します。
事前準備
PHPをインストールするにあたり、Windows Serverで以下の準備をします。
IISのインストール
サーバーマネージャーの[役割と機能の追加ウィザード]からインターネットインフォメーションサービス (IIS)をインストールします。
FastCGIのインストール
IISをデフォルトでインストールした場合はFastCGIモジュールがインストールされませんので、CGIモジュールをインストールします。手順については「
Windows Server に FastCGI モジュールをインストールする」の記事を参照してください。
インストール手順
PHP7の場合
PHP7のzipファイルをダウンロードします。今回はバージョン 7.1.7 の non-Thread Safe 版をダウンロードしました。
zipファイルのプロパティを開き[ブロックの解除]チェックボックスにチェックをし、ブロックを解除します。
zipファイルを展開します。
展開したファイルを "C:\PHP" ディレクトリに配置します。"C:\PHP" ディレクトリ以外(例えば、"C:\Program Files\PHP")に配置しても問題ありませんが、"C:\PHP"に配置するケースが多いようです。
PHP5の場合
PHP5のzipファイルをダウンロードします。今回はバージョン 5.6.31 の non-Thread Safe 版をダウンロードしました。
zipファイルのプロパティを開き[ブロックの解除]チェックボックスにチェックをし、ブロックを解除します。
zipファイルを展開します。
展開したファイルを "C:\PHP" ディレクトリに配置します。"C:\PHP" ディレクトリ以外(例えば、"C:\Program Files\PHP")に配置しても問題ありませんが、"C:\PHP"に配置するケースが多いようです。
[インターネット インフォメーション サービス (IIS) マネージャー]を起動します。下図のウィンドウが表示されます。
起動後左側のツリービューでサーバーのノードを選択します。右側のエリアから[ハンドラーマッピング]を選択します。
[ハンドラ-マッピング]画面が表示されます。右側の[操作]エリアから[モジュールマップの追加]を選択します。~
[モジュール マップの追加]ダイアログが表示されます。
[モジュール]のコンボボックスを開き"FastCgiModule"を選択します。
[実行可能ファイル]テキストボックスの右側の[...]ボタンをクリックします。ファイル選択ダイアログが開かれますので、先ほど設置したPHPの"C:\PHP" ディレクトリ内の php-cgi.exe を選択します。
他の項目も埋めます。[要求パス]は今回はPHPのみのため "*.php" とします。ダイアログ下部の「要求の制限」ボタンをクリックします。
[要求の制限]ダイアログボックスが表示されます。こちらは基本のままの設定でOKです。
設定が完了すると、[IIS マネージャー]のハンドラマッピングの項目に、先に設定した項目が追加されていることが確認できます。
動作確認
以下のテストファイルを作成します。
コード (test.php)
<?php
phpinfo();
?>
作成したPHPファイルにアクセスします。正しく動作すると下図の画面が表示されます。
正しく動作しない場合
エラー500などが発生し正しく動作しない場合は「
IISでPHPファイルを開くと 500エラーが表示されスクリプトが実行できない (Windows Server Tips)」を参照してください。
php.ini ファイルの編集
PHPを配置したディレクトリを確認すると
- php.ini-development
- php.ini-production
ファイルが配置されています。
今回は、"php.ini-production"ファイルを"php.ini"にリネームします。必要に応じてphp.iniファイル内を編集します。今回はデフォルトのまま利用します。
インストール手順 (以前の版)
PHP(Windows版)をダウンロードします。IISでPHPを動作させるため、non-Thread Safe版のPHPをインストールします。今回はPHP 5.5.13 non-Thread safe版を入手しました。
ダウンロードしたZIPファイルのプロパティを表示します。ZIPファイルがブロックされている場合は、[ブロック解除]ボタンをクリックし、ZIPファイルのブロックを解除します。
![](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==)
ダウンロードしたZIPファイルを展開します。
展開したフォルダをc:\Program Filesにコピーします。
[インターネット インフォメーション サービス (IIS) マネージャー]を起動します。起動後左側のツリービューでサーバーのノードを選択します。右側のエリアから[ハンドラーマッピング]を選択します。
[ハンドラ-マッピング]画面が表示されます。右側の[操作]エリアから[モジュールマップの追加]を選択します。~
[モジュール マップの追加]ダイアログが表示されます。
[モジュール]のコンボボックスを開き"FastCgiModule"を選択します。
[実行可能ファイル]欄の[...]ボタンをクリックし、実行ファイルを選択します。PHPを配置したディレクトリ内の"php-cgi.exe"を選択します。
[要求パス]は "*.php"とします。モジュールマップの名称[名前]欄は"PHP"としました。
ダイアログ下部の[要求の制限]ボタンをクリックします。下図の[要求の制限]ダイアログが表示されます。
[マップ]タブは下図の設定とします。(デフォルトのまま)
[動詞]タブは下図の設定とします。(デフォルトのまま)
[アクセス]タブは下図の設定とします。(デフォルトのまま)
[OK]ボタンをクリックしダイアログを閉じます。
元のダイアログに戻り[OK]ボタンをクリックします。下図のモジュールマップの変更確認ダイアログが表示されます。[はい]ボタンをクリックし、変更を確定します。
ハンドラ-マッピングの一覧に作成した"PHP"が追加されていることが確認できました。
動作確認
以下のテストファイルを作成します。
コード (test.php)
<?php
phpinfo();
?>
作成したPHPファイルにアクセスします。正しく動作すると下図の画面が表示されます。
登録日 :2014-06-11 最終更新日 :2018-01-17