AmazonLinux2にApacheをインストールして、PHPをインストールした後にPHPを記述したファイルをブラウザで表示させようとすると「Service Unavailable」と表示されてエラーになる場合があります。(私はMacBook Pro(M2)のDockerで環境を作成するときに遭遇しました)
エラーが発生した場合は以下のコマンドでログファイルを確認してみましょう。
$ cat /etc/httpd/logs/error_log
もし、エラーログに以下のようなエラーが記載されている場合は、php-fpmの設定を変更することで解消できることがありますので、困っている方は試してみてください。
[proxy:error] [pid 191] (13)Permission denied: AH02454: FCGI: attempt to connect to Unix domain socket /run/php-fpm/www.sock (*) failed
[proxy_fcgi:error] [pid 191] [client 172.17.0.1:61486] AH01079: failed to make connection to backend: httpd-UDS
php-fpmの編集
対応としては「php-fpm」の設定ファイルを2箇所変更します。
まず、1箇所目は50行目付近の「listen.mode」のパーミッションのコメントアウトを外して数値も変更します。
;listen.mode = 0660
↓
listen.mode = 0666
2箇所目は55行目付近の「listen.acl_users」をコメントアウトします。
listen.acl_users = apache,nginx
↓
;listen.acl_users = apache,nginx
php-fpmの再起動
上記でファイルを編集したら「php-fpm」を再起動すれば、Apache上でPHPが実行できるようになります。
$ systemctl restart php-fpm.service
それではみなさん、自由なWEBライフをお過ごしください!