閲覧ありがとうございます。
前提・実現したいこと
LaravelのアプリをAWS(EC2)にnginxで公開しようとしています。
EC2インスタンスを作成してGitHubからソースをクローンしてphp-fpmとnginxの設定を終え、EC2インスタンスのIPアドレスで接続しようとしたところ、「このページは動作していません [IPアドレス]では現在このリクエストを処理できません。」になってしまう問題を解決したいです。
発生している問題・エラーメッセージ
sudo tail -f /var/log/nginx/error.logで確認したエラーは以下になります。
2021/07/09 10:24:45 [error] 6244#6244: *5 FastCGI sent in stderr: "PHP message: PHP Parse error: syntax error, unexpected 'class' (T_CLASS), expecting identifier (T_STRING) or variable (T_VARIABLE) or '{' or '$' in /var/www/(アプリのディレクトリ)/public/index.php on line 49" while reading response header from upstream, client: 183.180.179.206, server: _, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/run/php-fpm/www.sock:", host: "18.176.57.44"
主な設定内容
環境構築は以下を参考にしました。
EC2でnginx+php+Laravelの環境を作ってみる。
AWS EC2 に Nginx + PHP8 で Laravel8 環境を構築する
以下のファイルを修正した際には、それぞれ再起動しています。
/etc/php-fpm.d/www.confの設定値(変更部分のみ)
listen = /run/php-fpm/www.sock listen.owner = nginx listen.group = nginx listen.mode = 0666 user = nginx group = nginx
/etc/nginx/nginx.confの設定値(server以外はデフォルト)
server { listen 80; listen [::]:80; server_name _; root /var/www/(アプリのディレクトリ)/public; add_header X-Frame-Options "SAMEORIGIN"; add_header X-Content-Type-Options "nosniff"; index index.php; charset utf-8; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ .php$ { fastcgi_pass unix:/run/php-fpm/www.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location ~ /.(?!well-known).* { deny all; } # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; error_page 404 /404.html; location = /404.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
試したこと
エラーメッセージを調べもしましたが、具体的な解決策が見つかりませんでした。
EC2を作り直して再度設定し直したりもしましたが、同じでした。
補足情報(FW/ツールのバージョンなど)
PHP
PHP 8.0.8
Laravel
Laravel Framework 8.45.1
nginx
nginx version: nginx/1.20.0
その他、解決のために必要な情報があれば教えてください。
些細なことでも構いませんので回答頂けると助かります。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー