最近、Lumen フレームワークの新規インストールを行い、それからサイトの構築を開始しました。はい、lumen は API 専用に設計されていることは承知していますが、これを手伝ってください。
すべてのビューを/resources/ views 内に配置し、テンプレートを/resources/views/templates内に配置しました。
[css/js/images]をどこかに配置しなければならなかったので、それをすべてpublic/assets/[css/js/images]に配置するのがいいと思いました。
cssを含めようとしているときの私のレイアウトで-私はこのようなものを使用します-
<link href="{{ url('assets/css/something.css') }}">
そしてそれはこのようなものの出力を与えて動作します -
<link href="localhost/assets/css/something.css">
同じことがjsでも機能しますが、画像を含めようとすると奇妙になります。画像を含めるには、次のように書きます-
<img src ="{{ url('assets/images/someimage.jpg') }}"
ページのソースを表示すると、出力は期待どおりです-
<img src="localhost/assets/images/someimage.jpg">
しかし、私のコンソールは、someimage.jpgが見つからないという404 not foundエラーを発生させます。そして、画像の親を調べてクロスチェックすると、URLは次のようにまったく異なります-
<img src="localhost/images/someimage.jpg">
画像の URL から「アセット」が自動的に省略されて 404 になりますが、ページのソースを表示すると正しい URL が表示されます。
問題を解決しようとしたこと -
キャッシュをクリアし、ページをリロードしました。
url() の代わりに asset() を使用しようとしましたが、そのプロトタイプはルーメンから削除されました。
[css/js/images] フォルダーをアセットから取り出して、親、つまり public に貼り付けます。これは機能しましたが、問題は、以前のセットアップが css と js の両方で機能し、画像のみで問題が発生したのはなぜですか?
私の他の質問は -
1. ページ ソースの URL が、レンダリングされているものと異なるのはなぜですか? 私の場合、ページソースのURLが機能し、画像が表示されましたが、レンダリングされたURLがパスから「アセット」を省略したため、404になりました。
2.これらのアセットをビューに含める他の良い方法はありますか? はいの場合は、それらをどこに置くかについても言及してください。
参照用にいくつかの画像/コードを添付します。