我的浏览器找不到css文件中定义的图像 . 作为一个例子,我使用这个:
background-image:url(../../../ resources / assets / img / logo.png); }
它可以在我的本地(Windows机器,没有定义web目录)上找到,但不能在我的测试服务器上找到 .
我用laravel 5 forge elixer . 在forge中,我将我的web目录定义为“/ public” .
我的文件夹结构如下:
-
app
-
配置
-
等
-
公众
-
css
-
all-12345678.css
-
js
-
all-12345678.js
-
资源
-
资产
-
img
-
image-1.png
-
image-2.png
-
image-x.png
在我看来,我用这种方式链接到css和js文件 . 浏览器找到这些文件:
<link href="{{ URL::asset('') }}{{elixir('css/all.css') }}" rel="stylesheet" type="text/css" />
<script src="{{ URL::asset('')}}{{ elixir('js/all.js') }}" type="text/javascript"></script>
如何链接到css文件中的资产?或者应该将它们替换为公用文件夹?
2 回答
我同意@codedge,您应该从公共文件夹访问您的图像 . 如果您已经在使用gulp,则可以将复制作业添加到gulpfile.js . 就像是:
根据documentation,
resources
文件夹不是为你想要的:The resources directory contains your views, raw assets (LESS, SASS, CoffeeScript), and localization files.
此外,Laravel显式使用
public
文件夹作为文档根目录,这样任何人都无法访问此目录之外的文件/资产 . 你最好在public
文件夹中创建一个文件夹images
并在那里放入你的图像 .