sitecore - 允许访问sitemap.xml,同时禁止其他xml文件

rav*_*nsp 4 xml sitecore httpforbiddenhandler sitecore6 sitemap.xml

在我们的sitecore 6.6.0(rev.130404)项目中,我们在根文件夹中有一个sitemap.xml文件.但是,由于web.config中的配置,无法从浏览器访问该文件.

<add path="*.xml" verb="*" type="System.Web.HttpForbiddenHandler" name="xml (integrated)" preCondition="integratedMode"/>
Run Code Online (Sandbox Code Playgroud)

此配置是按照sitecore安全加固指南中的说明添加的.

如果我们删除此配置,则用户可以访问sitecore文件夹中的任何.xml文件.我们怎样才允许访问sitemap.xml而不允许访问网站中的其他xml文件?

(我们在IIS7集成模式下运行)

Mar*_*Put 11

保留.xml的全局拒绝,并<handlers>使用以下规则向该部分添加另一个规则:

<add path="sitemap.xml" verb="GET" type="System.Web.StaticFileHandler" name="xml allow" />
<add path="*.xml" verb="*" type="System.Web.HttpForbiddenHandler" name="xml (integrated)" preCondition="integratedMode" />
Run Code Online (Sandbox Code Playgroud)

这将仅允许sitemap.xml和所有其他.xml文件被拒绝.

建议不要删除.xml文件上的全局拒绝,因为它将删除对license.xml文件的保护.