IISにPHPのインストール

Programing

PHP を Window11や Windows Server の IIS へ導入する方法と環境設定の手順です。

1.PHPの入手

PHP 公式サイトから入手します。

https://www.php.net/

画面上部に表示されている「Downloads」をクリックします。

「Binaries are available for Microsoft Windows」をクリックします。

「PHP 8.4 (8.4.6)」の「VS17 x64 Non Thread Safe」にある “Zip”をクリックし、“php-8.4.6-nts-Win32-vs17-x64.zip”をダウンロードします。

PHPのインストール

インストールはダウンロードした圧縮ファイル php-8.4.6-nts-Win32-vs17-x64.zipを任意のディレクトリに解凍するだけです。今回は「c:\PHP\」ディレクトリに展開しました。

PHPの設定

“C:¥php”フォルダの“php.ini-production”を同フォルダにコピーし、ファイル名を“php.ini”に変更します。

“php.ini”をテキストエディタで開き、パラメータを設定します。

変更前;open_basedir =
変更後open_basedir =”C:/inetpub/wwwroot”
変更前;error_log = syslog
変更後error_log = “C:/inetpub/logs/php_errors.log”
変更前;extension_dir = “ext”
変更後extension_dir = “C:/PHP/ext”
変更前;cgi.force_redirect = 1
変更後cgi.force_redirect = 0
変更前;cgi.fix_pathinfo=1
変更後cgi.fix_pathinfo=1
変更前;fastcgi.impersonate = 1
変更後fastcgi.impersonate = 1
変更前;fastcgi.logging = 0
変更後fastcgi.logging = 0
変更前;extension=mbstring
変更後extension=mbstring
変更前;extension=openssl
変更後extension=openssl
変更前;date.timezone =
変更後date.timezone = “Asia/Tokyo”
変更前;session.save_path = “/tmp”
変更後session.save_path = “C:/inetpub/temp”
変更前;mbstring.language = Japanese
変更後mbstring.language = Japanese

VSCodeとXdebugを導入している場合は以下を追記する。

変更前;zend_extension=opcache
変更後zend_extension=xdebug
xdebug.mode = debug,develop
xdebug.discover_client_host = yes
xdebug.log_level = 0
xdebug.log = “%sprogdir%/userdata/temp/xdebug/log.txt”
xdebug.start_with_request = yes
xdebug.idekey = VSCODE

PHPの動作確認

コマンドプロンプトを起動し、下記のコマンドを実行して PHP が動作することを確認します。

IISの設定

IISでPHPが動作するように設定します。

「IIS マネージャー」を起動し、”サイト”の “Defat Web Site”をクリックする。 [ハンドラー マッピング]をダブルクリックします。

“モジュール マップの追加”をクリックして、以下の内容を入力します。

要求パス: *.php
モジュール: FastCgiModule
実行可能ファイル: C:¥PHP¥php-cgi.exe
名前: PHP_FastCgi

ハンドラーマッピング内に設定した内容の行が追加されているのを確認します。

これで、IIS上 で PHP を動作させるための準備は完了です。

PHPサンプルの実行

“C:¥inetpub¥wwwroot”フォルダに“info.php”ファイルを作成し、以下のコードを記述して保存します。

<?php phpinfo(); ?>

ブラウザを起動し、 http://localhost/info.php を開きます。

PHP Version 8.4.6から始まるPHP の環境設定ページが表示されれば導入完了です。

コメント

タイトルとURLをコピーしました