我正在尝试从this Url Rewriting文章中实施方法3。
我已经添加了所有必需的配置(在urlRewriter模块的web.config中)但是当我尝试在web.config中添加它时:
<configuration>
<configSections>
<sectionGroup>
<section name="rewriter"
requirePermission="false"
type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSectionHandler, Intelligencia.UrlRewriter" />
</sectionGroup>
</configSections>
<system.web>
<httpModules>
<add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter"/>
</httpModules>
</system.web>
<rewriter>
<rewrite url="~/products/(.+)" to="~/products.aspx?category=$1" />
</rewriter>
</configuration>
它给了我:
无法识别的配置部分 重写...
请让我知道为什么它告诉我,我把错误的位置改写为xml节点?
...谢谢
解决方案:我已将section节点放在sectionGroup下,而它必须直接位于configSections
下答案 0 :(得分:0)
您缺少配置部分,因此.Net可以不解析实际设置
<rewriter>
<rewrite url="~/products/(.+)" to="~/products.aspx?category=$1" />
</rewriter>
如果阅读了您发布的链接,则该部分中不包含重写者,但该部分是独立的。
答案 1 :(得分:0)
我解决了这个问题,请检查 configSections 位置。重写者应该在section group之外。
像那样:<configSections>
<section name="rewriter"
requirePermission="false"
type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSectionHandler, Intelligencia.UrlRewriter" />
</configSections>
我正在检查我的项目。