在站点级别使用时,IIS7 URL Rewrite 2模块会将其配置保存在该站点的web.config文件中。我正在使用Sitecore CMS,最佳做法是将任何web.config自定义存储在单独的配置文件中,以便于升级,登台/生产设置等。
有没有办法为IIS7重定向指定不同的配置文件?
我知道应用程序级重写存储在ApplicationHost.config中,但我在服务器上运行了几个站点,并希望将它们分开。
谢谢,亚当
答案 0 :(得分:1)
为了支持您提到的这种最佳实践,Sitecore实现了可插入配置,但仅适用于web.config中<sitecore>
部分内的元素。因此,除非IIS7 URL重写提供了一些方法将其内容移动到单独的配置(就像ASP.NET为connectionstrings.config做的那样),我担心你必须将它保存在主web.config文件中。
很抱歉,如果我说的很明显。
答案 1 :(得分:1)
您也可以尝试使用重写地图
<rewrite>
<rewriteMaps configSource="rewriteMaps.config" />
</rewrite>
示例rewriteMaps.config文件:
<rewriteMaps>
<rewriteMap name="CustomRewrites" defaultValue="">
<add key="/instructions" value="/documents" />
</rewriteMap>
</rewriteMaps>
答案 2 :(得分:0)
我不熟悉url重写配置,但我有一个将url映射移动到单独文件的示例:
<urlMappings configSource="config\urlMappings.config"></urlMappings>
该文件如下所示:
<?xml version="1.0"?>
<urlMappings enabled="true">
<add url="~/somedealer" mappedUrl="/?theme=4" />
<add url="~/someotherclient" mappedUrl="/?theme=12" />
</urlMappings>
我确定网址重写的工作方式相同。