我使用rails 3.1及更少版本的资产管道。
我的图像存储在app / assets / images中。
在我的.css.less文件中我有:
background-image: url('image.gif');
当样式表被编译时,它会呈现图像的路径,如下所示:
background-image: url('/images/image.gif')
当通过webrick请求这些图像时,webrick会为这些请求返回406错误代码。手动请求http://localhost/images/image.gif
也会返回406。
但是,对http://localhost/assets/image.gif
的请求工作正常。
当我通过乘客访问rails服务器时,使用/images/image.gif
路径可以正常工作,/assets/image.gif
也是如此。
我还尝试将文件更改为.erb文件,然后使用asset_path,结果相同。
我还尝试在.css.less文件中使用此方法手动强制/assets
路径:
background-image: url('/assets/image.gif')
但仍然会编译css文件以使用/images/image.gif
答案 0 :(得分:2)
请改为尝试:
background-image:asset-url('image.gif',image);