我想使用UrlRewriteNet模块进行 URL 重写。
虽然我已经添加了所有必需的配置设置,但即使是简单的重写,似乎也没有采取任何行动。
网络配置:
<configuration>
<configSections>
<!-- URL Rewriting.NET -->
<section name="urlrewritingnet"
restartOnExternalChanges="true"
requirePermission="false"
type="UrlRewritingNet.Configuration.UrlRewriteSection, UrlRewritingNet.UrlRewriter" />
</configSections>
<system.web>
<httpModules>
<add name="UrlRewriteModule" type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter"/>
</httpModules>
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
<remove name="UrlRewriteModule"/>
<add name="UrlRewriteModule" type="UrlRewritingNet.Web.UrlRewriteModule, UrlRewritingNet.UrlRewriter" />
</modules>
</system.webServer>
<urlrewritingnet
xmlns="http://www.urlrewriting.net/schema/config/2006/07">
<rewrites>
<add name="GeneralRewrite"
virtualUrl="^~/Default.aspx"
rewriteUrlParameter="ExcludeFromClientQueryString"
destinationUrl="~/MyDefault.aspx"
ignoreCase="true"
/>
</rewrites>
</urlrewritingnet>
</configuration>
据我了解,只需将 Deafault.aspx 页面重写为 MyDefault.aspx,就不需要更多了。所以我希望我的 URL 从https://server.address/Project.SiteName/Default.aspx简单地变成https://server.address/Project.SiteName/MyDefault.aspx。
我在本地 IIS 7 Windows 7 开发电脑中使用开发,但发布生产服务器将是 IIS 6,这就是为什么我将这两种配置都包含在 web.config 中的原因。
不幸的是,在没有任何原因的错误的情况下,检查 IIS 并看到该模块已在“模块”部分注册,但引擎从未运行!
有什么我想念的吗?