技巧/诀窍:在ASP.NET中重写URL

作者:Scott Guthrie 来源:Scott Guthrie博客中文版 时间:2007-09-23 12:21:00 

【原文地址】Tip/Trick: Url Rewriting with ASP.NET
【原文发表日期】 Monday, February 26, 2007 9:27 PM

经常有人请我指导应该如何动态地“重写”URL,以在他们的ASP.NETweb应用中发布比较干净的URL端点。这个博客帖子概述了几个方法,你可以用来在ASP.NET中干净地映射或重写URL,以及按照你自己的需求组织你的URL的结构。

为什么URL映射和重写很重要?

下面是开发人员想要对URL有更大的灵活性的最常见的场景:

1) 处理这样的情形:你要更改你的web应用中网页的结构,但你同时也要确保在你移动网页后,那些被人收藏的老URL不会成为死链接。重写URL允许你透明地将请求转交到新的网页地址而不出错。

2) 在象Google,Yahoo 和 Live 这样的搜索引擎中提高你网站上网页的搜索相关性。具体地来说,URL重写经常能使你在你网站上网页的URL里更加容易地嵌入关键词,这么做往往会增加别人点击你的链接的机会。从使用查询字符串参数到使用完全限定(fully qualified)的URL也能在某些情形下提高你在搜索引擎结果中的优先顺序。使用强制referring链接使用同样的大小写(same case)和URL入口(譬如,使用weblogs.asp.net/scottgu 而不是 weblogs.asp.net/scottgu/default.aspx)的技术也能避免因跨越多个URL而造成的网页排名(pagerank)的降低(avoid diluting your pagerank across multiple URLs),从而增加你的搜索结果。

在一个搜索引擎日渐驱动网站访问量的世界里,在你的网页排名上稍微得到一些提高就能给你的业务带来不错的投资回报(ROI)。逐渐地,这驱使开发人员使用URL重写以及其他SEO(搜索引擎优化 )技术来优化网站(注,SEO是个步调很快的空间,增加你的搜索相关性的建议月月在演变)。想了解一些关于搜索引擎优化方面好的建议的话,我建议你阅读一下《SSW Rules to Better Google Rankings (SSW的提高Google排名之要领)》,以及MarketPosition关于《how URLs can affect top search engine ranking (URL会如何影响顶级搜索引擎排名)》的文章。

例程的URL重写场景

为这个博客贴子起见,我将假设我们将在一个应用里建造一套电子商务的产品目录网页,产品是按种类来组织的(譬如,图书,录像,CD,DVD等等)。

让我们假定一开始我们有个网页叫Products.aspx,通过查询字符串参数接受一个类别名称,相应地过滤显示的产品。与这个Products.aspx网页对应类别的URL看上去象这样:

http://www.store.com/products.aspx?category=books
http://www.store.com/products.aspx?category=DVDs
http://www.store.com/products.aspx?category=CDs


但我们不想使用查询字符串来呈示每个类别,我们想修改应用,让每个产品类别对搜索引擎来说看上去象是一个独特的URL,并且在实际的URL中嵌入关键词(而不是通过查询字符串参数)。我们将在这个博客帖子剩下来的篇幅里,讨论一下达成这个目的我们可以采取的4种不同方法。

标签:url,重写,asp.net
0
投稿

猜你喜欢

  • SQL Server数据库管理常用SQL和T-SQL语句

    2009-05-07 14:01:00
  • asp如何在数据库中用好Transaction?

    2010-06-22 21:07:00
  • 网页用多宽才更合适?

    2009-04-07 14:07:00
  • MySQL 函数过程递归

    2008-07-25 19:32:00
  • 用ASP实现分级权限控制

    2008-10-09 13:02:00
  • oracle-快速删除重复的记录

    2008-01-16 19:12:00
  • SQL Server 交叉表查询 case

    2012-01-05 19:31:38
  • MYSQL各字段的长度是多少?

    2009-10-28 18:32:00
  • 如何在页面错误时向数据库中添加记录?

    2010-06-26 12:26:00
  • 用VB编写ActiveX DLL实现ASP编程

    2008-10-21 21:28:00
  • Dreamweaver MX弹出窗口全攻略

    2010-09-05 21:14:00
  • hover悬停放大的翻页效果

    2008-05-19 12:20:00
  • SQLserver 2000中出现“指定的服务并未以已安装的服务存在 解决方案

    2011-04-27 14:33:00
  • CSS pointer-events下层元素被点击

    2010-04-11 22:31:00
  • JavaScript程序编码规范[译]

    2009-07-20 17:54:00
  • 交互设计中的“007功能”

    2007-10-29 11:53:00
  • XML简易教程之四

    2008-09-05 17:19:00
  • 同时安装sql2000和sql2005,经验点滴

    2008-03-04 17:56:00
  • js友好的表单验证程序vform

    2007-08-16 13:32:00
  • ASP编程入门进阶(十一):Chat聊天程序

    2008-05-12 07:06:00
  • asp之家 网络编程 m.aspxhome.com