Posted at

AWS EC2 Amazon Linux 2 AMI + Apache 2.4 + PHP-FPM 7.2 の構成にて、.html拡張子でPHPを動作させる


概要

Amazon Linux 2 AMI + Apache 2.4 + PHP-FPM 7.2 の構成にて

.html拡張子でPHPを動作させるためのメモ。

amazon-linux-extras を使用します。

コマンドは管理者権限で実施します(sudo su)。


手順


Apahche2.4インストール

yum install httpd


PHP-FPM 7.2インストール

amazon-linux-extras install php7.2


html拡張子設定

httpd.confの中ではなく、/etc/httpd/conf.d/php.conf にて設定します。

拡張子に.htmlを追加します。

1.

変更前

AddType text/html .php

変更後

AddType text/html .php .html

2.

変更前

<IfModule !mod_php5.c>

<IfModule !mod_php7.c>
<FilesMatch \.(php|phar)$>
SetHandler "proxy:unix:/run/php-fpm/www.sock|fcgi://localhost"
</FilesMatch>
</IfModule>
</IfModule>

変更後

<IfModule !mod_php5.c>

<IfModule !mod_php7.c>
<FilesMatch \.(php|phar|html)$>
SetHandler "proxy:unix:/run/php-fpm/www.sock|fcgi://localhost"
</FilesMatch>
</IfModule>
</IfModule>


PHP-FPM セキュリティ設定

/etc/php-fpm.d/www.conf にてセキュリティ設定を追加します。

これを設定しないとAccess denied. と表示されます。

変更前

;security.limit_extensions = .php .php3 .php4 .php5 .php7

変更後(行を追加)

security.limit_extensions = .php .html


再起動

service php-fpm restart

service httpd restart


自動起動設定

systemctl enable php-fpm

systemctl enable httpd


動作確認

vim /var/www/html/info.html

中身

<?php

phpinfo();

IPアドレス/info.htmlにアクセスして確認する