laravelのルーティングがうまくいかない(nginx)
5.2の場合はroutesディレクトリがないので、/path/tp/proj/app/Http/routes.php
にルーティング追加するも
ルーティングがうまくいかない。/だけ見られる状態。
環境
- laravel 5.2
- nginx
解決策
色々やったけど結局confファイルを以下の通りに書き換えたらいけた
(nginxでは.htaccessもmod_rewriteも使えないのでpublic以下の.htaccessが効いてなかったぽい?)
server { # サーバのデフォルトTCPポート listen 80; # サーバ名 server_name gorilla.jp; # ドキュメントルート root /var/www/gorilla.jp/public; # index file タイプの優先順 index index.php index.html index.htm; # ログファイル名 access_log /var/log/nginx/gorilla.jp/access.log; error_log /var/log/nginx/gorilla.jp/error.log; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location / { try_files $uri $uri/ /index.php?$query_string; } # php fpm との接続を行うため拡張子phpに対して処理 location ~ \.php$ { try_files $uri /index.php =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
参考
nginxで権限を設定した後も403 Forbiddenが出た話 - サナギわさわさ.json
Laravelでroutingは合ってるはずなのに404not foundが出るときにやること|Laravel|私の生き方にタイトルなど要らない