【发布时间】:2015-05-16 17:27:26
【问题描述】:
我在 Sitecore 中使用 sc:image 字段渲染器标签,当生成该字段时,它会在前端生成此标签:
<img src="/~/media/81907AC0172D4B93B5DF05E47B625F09.png" class="homepage_circle_icons" alt="Attract Customers" width="66" height="60">
在网址中,它的末尾有 .png。在我的本地主机上,这可以完美运行,但是当我部署到我们的开发服务器时,此 URL 显示为 404,因为找不到物理 png 文件。
当我尝试在浏览器中查看图像并取消“.png”扩展名时,它加载得很好。
我在 localhost 上使用与 dev 完全相同的代码,所以它必须是某种 IIS 服务器设置,对吧?我认为这与 MIME 类型没有任何关系,因为这些设置也相同。
我知道我可以覆盖 LinkProvider 和 GetMediaUrl 功能,但我想了解为什么我的开发服务器试图在物理文件系统中查找 png 文件而不是触发 Sitecore 的管道来查找它的根本原因。
有什么想法吗?
【问题讨论】:
-
只是为了检查 - media.requestextension 在每个环境 sitecoreblog.patelyogesh.in/2013/09/… 上的设置是否相同。还有什么版本的 Sitecore?
-
在两台服务器上都是一样的。我正在使用 Sitecore 7.5 -
这正是我想要的!非常感谢。我刚刚将该设置更改为具有“ashx”而不是空字符串并且它起作用了!然而,根据该博客,如果它是一个空字符串,则适当的扩展名 (jpg/png/gif) 应该可以工作。我想知道为什么它不在我的开发机器上。如果只是在 cmets 中,我如何将您的答案标记为正确?
-
没问题。是的,这似乎很奇怪,应该需要更多的调查。也许与IIS有关。我在下面添加了答案。谢谢