php-fpm 環境の PHP8で、html ファイルで PHP を実行させた際のメモ。
これまでのサーバー環境では、.htaccess 内に記述を加える html ファイルを phpファイルとして動作させていた。
PHP8 では以下のように書き直すとネットで見た。
#○は PHP のバージョン
AddHandler php○-script .php .html
↓
#○を取る
AddHandler php-script .php .html
しかしうまくいかなかった。
php-fpm の環境では違う設定が必要らしい。
php.conf の修正
/etc/httpd/conf.d/php.conf を開いてマーカー部分を追記
# Redirect to local php-fpm if mod_php (5 or 7) is not available
<IfModule !mod_php5.c>
<IfModule !mod_php7.c>
<IfModule !mod_php.c>
# Enable http authorization headers
SetEnvIfNoCase ^Authorization$ "(.+)" HTTP_AUTHORIZATION=$1
<FilesMatch \.(php|phar|html)$>
SetHandler "proxy:unix:/run/php-fpm/www.sock|fcgi://localhost"
</FilesMatch>
</IfModule>
</IfModule>
</IfModule>
/www.conf を修正
/etc/php-fpm.d/www.conf を開いて次のように修正
#変更前
;security.limit_extensions = .php .php3 .php4 .php5 .php7
#変更後
security.limit_extensions = .php .php3 .php4 .php5 .php7 .html
sudo systemctl restart httpd
sudo systemctl restart php-fpm