apacheとphp-fpmの連携 ソースコードむき出し状態を解消したい
解決したいこと
AlmaLinux 上で Apache と PHP(php-fpmインストール済み)を使って、自作の index.php(phpinfo() を含む)をブラウザから正しく PHP として実行できるようにしたいです。
現在は Apache のテストページ(It works!)が表示された後、DocumentRoot を変更して index.php を配置したところ、PHP のソースコードがそのまま表示されてしまいます。Apache 経由で php-fpm に処理を渡して PHP を正常に動作させたいです。現状以下の画像のような状態です。
自分で試したこと
以下のようにapache側の設定を変更しました。設定変更後再起動も行いました。Apache 設定(httpd.conf の一部)
# PHP を FastCGI 経由で処理する設定
<FilesMatch \.php$>
SetHandler "proxy:unix:/run/php-fpm/www.sock|fcgi://localhost/"
</FilesMatch>
# PHP ファイルが優先されるように設定
DirectoryIndex index.php
# ドキュメントルートの指定とそのディレクトリ設定
DocumentRoot "/var/www/html"
<Directory "/var/www/html">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
以下のようにphp側の設定を変更しました。設定変更後再起動も行いました。PHP-FPM 側の設定(/etc/php-fpm.d/www.conf)
;listen = 127.0.0.1:9000
listen = /run/php-fpm/www.sock
; コメントを外して Apache と連携できるように設定
listen.owner = apache
listen.group = apache
; 以下は無効化(コメントアウト)
;listen.acl_users = apache,nginx
0 likes