0

出于某种原因,在我当前使用 slim 的 sinatra 应用程序中,每当我尝试使用 html 将图像放置在我的标记中时src="path/to/file",该图像都会作为库存照片图标出现在网站上,有时甚至会返回 404。

所有图像都保存在图像目录中,并且从该目录中的图像设置 css 背景图像可以正常工作。但由于某种原因,html img src 属性在指定它的目录位置后不会返回图像。

所有图片均为png。

感谢您的帮助,-亚当

如需额外信息:

我将我的公用文件夹存储到一个名为 assets 的导演

set :public_folder => 'assets'

这个 assets 文件夹位于项目库中,assets 内部是一个名为“images”的文件夹,其中包含我的 png。

奇怪的是,即使在定义了像 img src="/Users/ user /Desktop/Programming/Sinatra-projects/ projectname /assets/images/image.png"这样的显式路径之后

它仍然不显示,并显示一个股票照片图标。

并且,它使用位置语法 src="/images/ image .png"成功加载了此目录中的其他图像

4

2 回答 2

0

在应用程序root中,如果public存在文件夹,则启用静态设置。在默认情况下,图像应位于public/path/to/file. 至于引用它,您可能想要使用绝对路径,/path/to/file而不是path/to/file. 如果您在具有相对路径的嵌套文件夹中引用它,则图像将结束 404。您可以阅读有关Sinatra 配置的更多信息,以根据需要调整设置。

于 2013-08-12T09:10:16.663 回答
0

我认为您配置静态文件夹错误您可以查看文档http://www.sinatrarb.com/intro.html#Static%20Files

set :public_folder, File.dirname(__FILE__) + '/static'

于 2013-08-12T08:07:08.687 回答