ApaheからPHPを利用できるように設定する
Apache から PHP を利用するために必要となる設定について解説します。具体的にはモジュール( php7_module または php_module )の追加と拡張子( .php )の登録を行います。
(Last modified: )
php_moduleモジュールを追加する
最初に PHP を利用するためのモジュールを追加します。今回は PHP 8 系を使用するので php_module を使用します。( PHP 7 系を使用する倍は php7_module を使用します)。
PHP をインストールしたディレクトリを確認すると、 Apache から PHP を利用するために必要な php8apache2_4.dll が含まれています( PHP 7 系の場合は php7apache2_4.dll )。
httpd.conf ファイルテキストエディタなどで開いたあと、ファイルの最後に次のように記述してください。(追加する DLL ファイルのパスは PHP をインストールされた各自の環境に合わせて変更して下さい)。
# PHP 7 の場合 LoadModule php7_module c:/pg/php/php7apache2_4.dll # PHP 8 の場合 LoadModule php_module c:/pg/php/php8apache2_4.dll
※ PHP 8 の場合は php8_module ではなく php_module となる点にご注意ください。
今回は PHP 8 系を使用するので、次のように httpd.conf ファイルに追加しました。
拡張子(.php)とPHPを関連付ける
PHP で使う拡張子( .php )と PHP を関連付けます。関連付けを行うことで、拡張子( .php )のファイルへアクセスがあった時に、 PHP を使って実行された結果がクライアントに返されるようになります。 httpd.conf ファイルの末尾に FilesMatch ディレクティブを使って次のように記述して下さい。
PHP 7 の場合:
<FilesMatch "\.php$"> AddHandler php7-script .php AddType application/x-httpd-php .php </FilesMatch>
PHP 8 の場合:
<FilesMatch "\.php$"> AddHandler php-script .php AddType application/x-httpd-php .php </FilesMatch>
※ PHP 8 の場合は php8-script ではなく php-script となる点にご注意ください。
今回は PHP 8 系を使用するので、次のように httpd.conf ファイルに追加しました。
php.iniの配置場所の指定(PHPIniDir)
PHP の設定ファイルである php.ini が設置されているパスを指定します。 httpd.conf ファイルを開き、今回は一番最後に次のように記述しました。
PHPIniDir "c:/pg/php"
上記は php.ini ファイルが C:\pg\php ディレクトリに設置してある場合です。ご自身の環境に合わせて変更して下さい。
これで指定した場所にある php.ini ファイルを参照するようになります。
httpd.conf ファイルの更新が終わりましたら Apache を再起動して新しい設定を反映させておいて下さい。これで Apache から PHP を利用するための設定は完了です。
phpが利用できるか確認する
Apache から PHP を利用できるように設定ができたかどうかを確認するために、 phpinfo 関数を使った簡単なスクリプトを作成して動作確認を行います。テキストエディタを開き次のように記述します。
<?php phpinfo(); ?>
ファイル名は任意でいいのですが、今回は phpinfo.php という名前で Apache のドキュメントルートに配置しました。
ブラウザを起動し http://localhost/phpinfo.php へアクセスして下さい。次のように PHP に関する情報が表示されれば Apache から PHP を利用できるようになっています。
なお今回使用した phpinfo.php ファイルをそのまま外部から公開できる状態にしておくことは望ましくないので、確認が終わりましたら削除してください。
-- --
Apache から PHP を利用するために必要となる設定について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。