LoginSignup
6
2

More than 3 years have passed since last update.

Docker+nginx+phpfpm+CakePHP3でcssファイルが(404 not found)だった

Last updated at Posted at 2019-09-22

概要

docker-compose を使って、nginx+phpfpm+CakePHP3でコンテナを立ち上げたが、CakePHP3のwelcome画面にてcssがすべて404になっていた。 (正確には .php 以外のファイルが404)

結論

docker-compose.ymlnginx 方にもphpfpm と同様に volumes を指定してあげると良い。

経緯

こちらの記事を参考にさせて頂いて、
https://qiita.com/mochizukikotaro/items/b398076cb57492980447
https://github.com/mochizukikotaro/docker-nginx-phpfpm/tree/simple

よし、俺も爆速でCakePHP3を動かしてみるかと業務時間中に遊んでいたのだけど、CakePHP3のwelcome画面でCSSが全く効いていない。 .php は問題ないので、nginxのdefault.confを見直すも、特に問題なさそう。落ち着いていくつかの記事を漁ったところ 結論 に書いた方法でうまくいきました。

こちらの記事にもちょっとそのような事が書いてありました。
https://oki2a24.com/2018/07/30/point-of-nginx-php-fpm-simple-doccker-compose/

あるいは、nginxコンテナのdefault.confを、↓のようにして、

location ~\.(php|html|css)$ {

php-fpm コンテナ側の security.limit_extensions.html.cssを追加してやればそちらで処理することも可能なのかもしれないが、nginx+phpfpmでの正解をいまいち分かっていないため、こちらはとりあえずやってません。( limit_extensions を記載しない状態では、php以外は403 )

ベストプラクティス知ってる偉い人がいたらぜひ教えてほしい。

6
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
2