@dsghethe (frewgwg wgwrg)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

apacheとphp-fpmの連携 ソースコードむき出し状態を解消したい

解決したいこと

AlmaLinux 上で Apache と PHP(php-fpmインストール済み)を使って、自作の index.php(phpinfo() を含む)をブラウザから正しく PHP として実行できるようにしたいです。

現在は Apache のテストページ(It works!)が表示された後、DocumentRoot を変更して index.php を配置したところ、PHP のソースコードがそのまま表示されてしまいます。Apache 経由で php-fpm に処理を渡して PHP を正常に動作させたいです。現状以下の画像のような状態です。

スクリーンショット 2025-07-07 180120.png

自分で試したこと

以下のように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

1Answer

質問元を再編集して、以下の不足している情報を書き足して下さい。

  • Apacheの(エラー)ログを提示する
  • php-fpmプロセスはスタートさせているのか

当方AlmaLinuxは扱ったことが無いのですが、php-fpmの設定

listen.owner = apache
listen.group = apache

が、正しいかどうか判断が付きません。他のOS(Ubuntu)だとアウトなケースがあるためです。

0Like

Your answer might help someone💌