.html拡張子のファイルでPHPを実行する

広告

PHP のスクリプトが記述されたファイルの拡張子は .php とすることが多いのですが、設定を追加することで .html の拡張子で記述されたファイルで PHP を実行することができます。ここでは Apache で .html 拡張子のファイルで PHP を実行するための設定方法について解説します。

拡張子(.html)をPHPと関連付ける

拡張子( .htm )と PHP を関連付けます。関連付けを行うことで、拡張子( .html )のファイルへアクセスがあった時に、 PHP を使って実行された結果がクライアントに返されるようになります。

ドキュメントルート以下のすべての .html ファイルで PHP で記述したスクリプトが実行できるようにするには、 httpd.conf ファイルでドキュメントルートを対象にした Directory ディレクティブの中で次の記述を追加してください。

PHP 7 の場合:

<Directory "${SRVROOT}/htdocs">
  AddHandler php7-script .php .html
  AddType application/x-httpd-php .php .html
</Directory>

PHP 8 の場合:

<Directory "${SRVROOT}/htdocs">
  AddHandler php-script .php .html
  AddType application/x-httpd-php .php .html
</Directory>

.php に加えて .html のファイルでもファイルの中で PHP が記述されていた場合は実行されるようになります。もし特定のディレクトリのみで許可する場合は、対象のディレクトリに対して Directory ディレクトリを記述し、ブロック内で設定を記述してください。

※ どちらかを記述すればよかったのですが、環境によって違う可能性もあったのでどちらも記述しています。

phpが利用できるか確認する

.html ファイルの中に記述された PHP のスクリプトが実行されるかどうか確認するため、ドキュメントルートの下の mydir ディレクトリに index.html ファイルを作成し、次のように記述しました。

<html>
<body>
<p>Hello HTML</p>

<?php
    print "Hello PHP";
?>

</body>
</html>

phpが利用できるか確認する(1)

最初に .html の拡張子で PHP を利用できる設定を行わずに http://localhost/mydir/index.html へアクセスして下さい。 PHP のスクリプトが実行されないためブラウザには次のように表示されます。

phpが利用できるか確認する(2)

続いて .html の拡張子で PHP を利用できる設定を行ってから改めて http://localhost/mydir/index.html へアクセスして下さい。 PHP のスクリプトが実行されてブラウザには次のように表示されます。

phpが利用できるか確認する(3)

-- --

Apache で .html 拡張子のファイルで PHP を実行するための設定方法について解説しました。

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)
Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。