PHPを利用するためのApacheの設定

PHP を記述した Web ページを Apache で公開する場合、 Apache でもいくつかの設定を行っておき必要があります。 XAMPP を使ってインストールした場合には PHP を利用するために必要となる設定が Apache で自動で行われていますが、ここではどのような設定を Apache で行っておく必要があるのかについて解説します。

(Last modified: )

phpに関するApacheの設定ファイル

Apache の設定ファイルは httpd.conf ファイル ですが、 PHP に関する設定は httpd-xampp.conf ファイルに記載されており、このファイルを httpd.conf ファイル内で読み込んでいます。

httpd-xampp.conf ファイルは XAMPP をインストールしたディレクトリの下にある apache\conf\extra\httpd-xampp.conf リにあります。

phpに関するApacheの設定ファイル(1)

httpd-xampp.conf ファイルはテキストファイルですのでテキストエディタで開いて下さい。

phpに関するApacheの設定ファイル(2)

httpd-xampp.conf ファイルの内容を確認したり、編集したりすることができます。

phpに関する設定項目

それでは httpd-xampp.conf ファイルの中で PHP に関連する設定項目について簡単に解説します。

PHPINIDir

PHPINIDir には PHP の設定ファイルである php.ini ファイルが設置されているディレクトリを指定します。

<IfModule php_module>
    PHPINIDir "D:/xampp/php"
</IfModule>

デフォルトの設定では XAMPP をインストールしたディレクトリの下の php ディレクトリが設定されています。 PHP 側で php.ini ファイルの設置場所を変更した場合には Apache 側の設定も忘れずに変更しておいて下さい。

PHPINIDir(1)

LoadModule

LoadModule については httpd.conf ファイルでも記載されていますが、 PHP に関するモジュールについては httpd-xampp.conf ファイルに記載されています。

#
# PHP-Module setup
#
LoadFile "D:/xampp/php/php8ts.dll"
LoadFile "D:/xampp/php/libpq.dll"
LoadFile "D:/xampp/php/libsqlite3.dll"
LoadModule php_module "D:/xampp/php/php8apache2_4.dll"

Apache 用の PHP モジュールを読み込んでいます。実際に読み込んでいるファイルをが存在していることも確認しておいてください。

PHPINIDir(1)

拡張子に関する設定

拡張子が .php 及び .phps に対する MIME タイプを text/html に設定します。次のような記述が記載されているかどうか確認して下さい。

<IfModule mime_module>
    AddType text/html .php .phps
</IfModule>

そして .php の拡張子を持つファイルは PHP ファイルとして処理するように、また .phps の拡張子を持つファイルは PHP ファイルのソースファイルとして処理するように設定します。こちらも最初から記載されていると思いますが念のため確認しておいて下さい。

<FilesMatch "\.php$">
    SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
    SetHandler application/x-httpd-php-source
</FilesMatch>

PHP を利用する上で必要となる Apache 側の設定は以上です。

-- --

Apache から PHP を利用する場合に、どのような設定を Apache で行っておく必要があるのかについて解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。