`
yangle926
  • 浏览: 58358 次
  • 性别: Icon_minigender_1
  • 来自: 洛阳
社区版块
存档分类
最新评论

再谈<<在ASP.NET中重写URL>>

    博客分类:
  • .NET
 
阅读更多
将之前的<<在ASP.NET中重写URL>>中的代码重构一下:
Global.asax.cs文体中:
protected void Application_BeginRequest(object sender, EventArgs e)
{
  string pattern = @"(ArticleContent)-(\d+).html";
  MyRewritePath(pattern, "$1.aspx?id=$2");
  //将ArticleContent.aspx?id=n改写为ArticleContent-n.html的形式(n为参数) 
  string pattern1 = @"(ArticleList)-(\d+).html";
  MyRewritePath(pattern1, "$1.aspx?caid=$2");
  //将ArticleList.aspx?caid=n改写为ArticleList-n.html的形式
  string pattern2 = @"(SsStorieDetailed)-(\d+).html";
  MyRewritePath(pattern2, "$1.aspx?id=$2");
  //将SsStorieDetailed.aspx?id=n改写为SsStorieDetailed-n.html的形式
}
protected void MyRewritePath(string pattern,string regex)
{
  string oldUrl = HttpContext.Current.Request.RawUrl;
  Match m = Regex.Match(oldUrl, pattern, RegexOptions.IgnoreCase | RegexOptions.Compiled);
  if (m.Success)
  {
    string newUrl = Regex.Replace(oldUrl, pattern, regex, RegexOptions.Compiled | RegexOptions.IgnoreCase);
    this.Context.RewritePath(newUrl);
  }
}


补充:ASP.NET 2.0的URL映射的实现方法
在Web.config->configuration->system.web部分实现:
  <urlMappings enabled="true">
    <add url="~/Index.html" mappedUrl="~/Default.aspx" />
    <add url="~/InformationDissemination.html" mappedUrl="~/InformationDissemination.aspx" />
		</urlMappings>

将首页Default.aspx映射为Index.html,将InformationDissemination.aspx映射为InformationDissemination.html
分享到:
评论

相关推荐

    Asp.Net URL重写-URLReWrite

    在本文中,我们将深入探讨ASP.NET URL重写的核心概念、工作原理以及如何配置和使用。 **1. URL重写的基本概念** URL重写是一种技术,它允许服务器在接收到客户端请求时改变请求的目标URL,而不会影响客户端浏览器...

    ASP.NET中重写URL

    以下将详细介绍四种在ASP.NET中实现URL重写的方法。 ### 方法一:Web.config配置 在ASP.NET中,最常用且基础的URL重写方式是通过修改`Web.config`文件来实现。在`&lt;system.webServer&gt;`节点下添加`&lt;rewrite&gt;`节点,...

    asp.net url重写 demo

    在这个“asp.net url重写 demo”项目中,我们看到使用了Intelligencia.UrlRewriter.dll组件来实现这一功能,这是一个广泛使用的开源URL重写库,适用于.NET Framework 3.5。 首先,让我们了解URL重写的基本原理。URL...

    asp.net 中的url重写

    下面将详细探讨URL重写的概念、原因、实现方法以及在ASP.NET中的应用。 1. **URL重写概念**: URL重写是Web应用程序的一种技术,它允许服务器根据预定义的规则将请求的URL转换为另一个URL。这种转换在后台发生,...

    asp.net2.0的URL重写例子

    URL 重写技术在 ASP.NET 中主要通过 `HttpModule` 和 `UrlRoutingModule` 类实现。下面将详细介绍 ASP.NET 2.0 的 URL 重写机制及其应用。 1. **URL 重写原理**: URL 重写是服务器端的一种技术,当用户请求一个...

    asp.net 实现对url的重写

    在ASP.NET中,URL重写是指在内部处理请求时,将用户输入的原始URL转换为不同的内部处理URL。这主要通过IIS服务器模块或ASP.NET应用程序中的HTTP模块来实现。URL重写的核心在于创建一个规则集,这些规则定义了如何将...

    asp.net url重写(URLRewriter)

    3. 网站迁移:在网站结构发生变化时,通过重写URL可以保证旧链接仍然有效。 4. 重定向:将不再使用的URL重定向到新的位置,避免404错误。 五、实现方式 在ASP.NET中,URL重写可以通过以下几种方式实现: 1. 使用...

    ASP.NET URL重写示例-vs2010

    在本文中,我们将深入探讨ASP.NET URL重写技术,以及如何在Visual Studio 2010环境下进行实现。 首先,让我们理解URL重写的基本原理。URL重写技术主要涉及改变用户请求的实际URL,而服务器内部处理的却是不同的地址...

    ASP.NET URL重写示例

    开发者可以参考这个博客,了解如何在自己的ASP.NET项目中实现URL重写,提升用户体验并优化网站的搜索引擎可见性。 总之,ASP.NET URL重写是通过自定义URL规则改善网站架构和用户体验的重要技术。通过URLRewriter库...

    asp.net Url重写与动态生成静态页面

    在提供的压缩包文件"UrlRewrite"中,可能包含了ASP.NET URL重写的配置示例或者相关的代码实现,可以帮助你更好地理解和应用这些技术。学习并熟练掌握这些知识,对于提升ASP.NET应用的性能和SEO优化有着极大的帮助。...

    asp.net c# Url重写和无扩展名Url重写

    在ASP.NET中,这通常通过使用IIS(Internet Information Services)的URL重写模块或者Microsoft的`System.Web.Routing`类库来实现。通过URL重写,你可以将复杂的、参数化的URL转换为简洁的、有意义的URL,比如将`/...

    ASP.NET MVC URL重写与优化

    在ASP.NET MVC框架中,URL重写和优化能够使应用程序的网址更加美观、可读,同时还能帮助隐藏技术细节,提高网站的SEO(搜索引擎优化)效果。 **URL重写** 1. **原理**:URL重写是指在服务器端将用户请求的实际URL...

    asp.net url重写实例

    在ASP.NET中,URL重写可以通过两种主要方式实现:配置IIS URL重写模块和使用HttpModule(如UrlRewrite模块)。IIS URL重写模块是微软提供的一个免费工具,它可以处理所有IIS接收的HTTP请求,并根据预定义的规则进行...

    asp.net url重写

    在ASP.NET中,可以通过URL重写将带有参数的动态URL转换为没有扩展名或看起来像目录结构的静态URL。这样不仅可以提高用户体验,还能帮助搜索引擎更好地理解和索引网页。 四、SEO优化 搜索引擎更喜欢简洁、语义明确...

    在asp.net 中使用URL重写向(重写)技术

    在ASP.NET中,实现URL重写主要依赖于`System.Web.Routing`命名空间中的`Route`类。下面将详细介绍如何使用`Route`类进行URL重写,以及相关的源码实例。 1. **安装和配置** 首先,确保你的项目引用了`System.Web....

    asp.net Url重写

    ASP.NET URL重写是Web开发中的一个重要概念,它允许开发者改变URL的结构,使其更加用户友好,同时也可以提高搜索引擎优化(SEO)。URL重写技术主要由`UrlRewriter`组件来实现,这是一个强大的工具,可以帮助我们创建...

    asp.net url完整重写实例

    在ASP.NET中,URL重写通常通过`System.Web.Routing`命名空间下的类来实现。本实例将详细讲解如何将`.aspx`页面重写为`.html`或其他自定义后缀,以及实现路径级别的重写。 首先,我们需要在ASP.NET应用程序的全局....

    C#伪静态 ASP.NET Url重写

    实现ASP.NET中的伪静态和URL重写,首先需要安装和配置URLRewriter.dll。这个库是由IIS URL Rewrite Module的作者IIS Team开发的,可以在NuGet包管理器中找到并添加到项目中。在完成安装后,我们需要在Web.config文件...

    .net Url重写示例

    在.NET中,通常有两种方式实现URL重写:IIS URL Rewrite模块和ASP.NET的Route类。IIS URL Rewrite模块是在服务器层面处理,适用于各种.NET框架的应用;而ASP.NET的Route类则是在应用程序层面处理,主要用于ASP.NET ...

Global site tag (gtag.js) - Google Analytics