首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UrlRewriter.NET -简单的重写规则,但是如何重写呢?

UrlRewriter.NET -简单的重写规则,但是如何重写呢?
EN

Stack Overflow用户
提问于 2012-08-15 21:29:25
回答 1查看 5.3K关注 0票数 2

我刚刚安装了来自Urlrewriter.net的示例,但我似乎找不出解决问题的规则。

非常简单:

如果用户被导航到此页面:

代码语言:javascript
复制
http://localhost/UrlRewriteTest/Default.aspx?PageID=33

Url应如下所示:

代码语言:javascript
复制
http://localhost/UrlRewriteTest/33

或者也许

代码语言:javascript
复制
http://localhost/UrlRewriteTest/33.aspx

我做错了什么?这是我的web.config:

代码语言:javascript
复制
<?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最终应该如下所示:

代码语言:javascript
复制
http://localhost/UrlRewriteTest/thename/

诚挚的问候。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-15 21:34:21

你可以阅读Scott Guthrie关于网址重写@ http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx的文章。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11970157

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档