Iis Sitecore sc:image标记生成一个URL,提供404

Iis Sitecore sc:image标记生成一个URL,提供404,iis,sitecore,Iis,Sitecore,我正在Sitecore中使用sc:image字段渲染器标记,当该字段生成时,它会在前端生成此标记: <img src="/~/media/81907AC0172D4B93B5DF05E47B625F09.png" class="homepage_circle_icons" alt="Attract Customers" width="66" height="60"> 在url中,它的末尾有.png。在我的本地主机上,这工作得很好,但是当我部署到我们的开发服务器时,这个URL显示为4

我正在Sitecore中使用sc:image字段渲染器标记,当该字段生成时,它会在前端生成此标记:

<img src="/~/media/81907AC0172D4B93B5DF05E47B625F09.png" class="homepage_circle_icons" alt="Attract Customers" width="66" height="60">
在url中,它的末尾有.png。在我的本地主机上,这工作得很好,但是当我部署到我们的开发服务器时,这个URL显示为404,因为找不到物理png文件

当我尝试在浏览器中查看图像并去掉.png扩展名时,它的加载效果很好

我在localhost上使用与dev完全相同的代码,所以它必须是某种IIS服务器设置,对吗?我认为这与MIME类型无关,因为这些设置也是相同的

我知道我可以覆盖LinkProvider和GetMediaUrl功能,但我想找到根本原因,即为什么我的开发服务器试图在物理文件系统中查找png文件,而不是触发Sitecore的管道来查找它


有什么想法吗?

检查web.config中的media.requestextension设置。在其他环境中可能会有所不同。更多信息请点击这里


请检查web.config中的media.requestextension设置,在其他环境中可能会有所不同。更多信息请点击这里


只需检查-media.requestextension在每个环境中的设置是否相同。还有什么版本的Sitecore?在两台服务器上都是相同的。我正在使用Sitecore 7.5,这正是我想要的!非常感谢你。我只是改变了设置,用ashx代替了空字符串,它成功了!然而,根据该博客的说法,如果它是一个空字符串,那么适当的扩展名jpg/png/gif应该可以工作。我想知道为什么它不在我的开发机器上。如果你的答案只是在评论中,我怎么能把它标记为正确的呢?没问题。是的,这看起来很奇怪,需要更多的调查。也许和IIS有关。我在下面添加了答案。感谢检查-media.requestextension设置在每个环境中是否相同。还有什么版本的Sitecore?在两台服务器上都是相同的。我正在使用Sitecore 7.5,这正是我想要的!非常感谢你。我只是改变了设置,用ashx代替了空字符串,它成功了!然而,根据该博客的说法,如果它是一个空字符串,那么适当的扩展名jpg/png/gif应该可以工作。我想知道为什么它不在我的开发机器上。如果你的答案只是在评论中,我怎么能把它标记为正确的呢?没问题。是的,这看起来很奇怪,需要更多的调查。也许和IIS有关。我在下面添加了答案。谢谢