DockerでLaravelを構築時に、Route設定したのに[404 not found]

Dockerを使ってLaravelの環境構築をしています。
DockerもLaravelもまだまだ理解が浅いなかで、進めています。

今回、解説したいことは、
・Dockerを使ってLaravelを構築
・トップページは表示 (welcom.blade.php)
・ルーティング、コントローラー、ビューを設定(ミスなく)
・新しく設定したルートをリクエストしても[404 not found]になる ★ココ

という状況です。

DockerのLaravel環境構築は、Qiitaで記載されていた下記を参考にさせて頂きました。

https://qiita.com/A-Kira/items/1c55ef689c0f91420e81

( ほぼ)同じようにセットアップしていきました。
上記問題が発生した際に、確認したことは。

ルーティングの設定です。
最初は、
Laravelのルート設定に問題がないのか確認したのですが、問題ありませんでした。

次に、
Webサーバーの確認です。
Webサーバー は、nginxを使っています。
で、Dockerにて、nginxを設定する際に、default.confで設定していた部分を確認しました。

nginx設定は、基本的にはdefault.confで設定していくそうです。
ここで、ルーティングと関係している部分は、 location  です。

元々の設定:

location / {     root /var/www/public;     index  index.html index.php;     } 

この場合だと、ルートディレクトリのみ表示できる状態です。

下記のように変更すると、設定した他のルートにもアクセスできました。
loacationの設定は 他にも、色々とありそうです。

  location / {
    root /var/www/public;     
  index  index.html index.php; 
    try_files $uri $uri/ /index.php?$query_string;    
  } 

これを変更したあとは、
再度、
・ビルドを実施。(キャッシュは使わずに)
・コンテナ起動
をして、確認してみましょう。

docker-compose build --no-cache
docker-compose up -d

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です