【发布时间】:2012-08-11 19:10:09
【问题描述】:
我刚刚从 Urlrewriter.net 安装了示例,但我似乎无法弄清楚 完成我的问题的规则。
很简单:
如果用户被导航到这个页面:
http://localhost/UrlRewriteTest/Default.aspx?PageID=33
网址应如下所示:
http://localhost/UrlRewriteTest/33
或许
http://localhost/UrlRewriteTest/33.aspx
我做错了什么?这是我的 web.config:
<?xml version="1.0"?>
<configuration>
<configSections>
<section name="rewriter" requirePermission="false" type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSectionHandler, Intelligencia.UrlRewriter"/>
</configSections>
<system.web>
<httpModules>
<add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter"/>
</httpModules>
<compilation targetFramework="4.0"/>
<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/>
</system.web>
<rewriter>
<rewrite url="~/(.+)" to="~/Default.aspx?PageID=$1"/>
</rewriter>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
<add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule" />
</modules>
<validation validateIntegratedModeConfiguration="false" />
</system.webServer>
</configuration>
这是第一步。更理想的 PageID 应该传递给数据库 并返回页面名称而不是 ID,并且 URL 应该最终看起来 像这样:
http://localhost/UrlRewriteTest/thename/
最好的问候。
【问题讨论】:
标签: asp.net url-rewriting url-rewrite-module urlrewriter.net