做为进入Web的大门,URLs构成了用户体验的一个重要部分。Web开发人员需要处理的问题之一就是提供友好的URLs,使得在输入时即易识别又易输入。本文围绕这一主题探讨了几个问题和一些可能的解决方案。
为什么使用友好的URL?
提供用户友好的URLs的概念已经出现很长时间了,但是一些开发人员仍然经常忽略这一点。最基本的想法就是提供一个易于理解的Web地址,它有以下好处:
对于静态页面来说通过URL映像使用这些原则很简单,但是对于动态页面稍有不同。下面我将首先介绍URL映像。
映像已经存在的页面
网站开发人员或治理员可以通过URL映像创建用户友好的URLs并将它们映像到已经存在的Web页面上。大部分Web平台作为一个标准特性提供了这个功能。主要是将一个友好的URL映像到一个已经存在的网站路径。例如,你可以映像下面长度的地址。
http://www.examplesite.com/main/shopping/products/books/sale
This lengthy address may be mapped to a shorter, friendlier address like this:
http://www.examplesite.com/books/sale
这个功能可以通过像IBM WebSphere的治理工具等很轻易地获得。ASP.NET 2.0通过配置文件提供了映像功能,Apache提供了URL重定向等等。当处理动态地址时,提供友好URLs需要一些技巧。
处理动态内容
在今天的Web中页面生成是一个公共特性,因为网站经常使用后台数据库传递不断改变的内容。这是提供给用户及时和最新信息的必要方法,但是动态内容的地址经常是很难处理的。由Lotus Domino提供的URLs是一个很好的例子。下面的URL指向IBM站点的书籍主页(使用了Domino):
http://publib-b.boulder.ibm.com/Redbooks.nsf/
9445fa5b416f6e32852569ae006bb65f/7a98d2e4b033351c85256a50004af2fc
OpenDocument
你想记住那个地址吗?虽然可能不需要为这个地址提供一个友好的URL,但是我们经常需要缩短和解释这样的地址以便更友好。这些地址经常称为脏URLs,因为他们包含了被使用的数据或命令。
你可以使用URL重写掩藏复杂的Web地址。这是一个截取即将到来的Web 请求并将之重定位到一个不同的资源的过程。实现URL重写的一个挑战是,这样做的预备时间的投资是否合算。你可以在应用中开发和包含重写函数或使用已经存在的解决方案。
Apache可以获得mod_rewrite模块。它提供了基于规则的引擎来重写请求的URLs。利用ASP.NET可以开发自己的或使用第三方的解决方案如ISAPI_Rewrite、IISRewrite或PageXchanger。这是当前Web平台市场的几个简单例子。
使用服务
简化Web地址的另外一种方法是使用第三方提供的服务例如TinyURL来简化你的地址。例如,我们输入TechRepublic.com,它提供了简单的URL如下:http://tinyurl.com/phd2v
评论加载中…
![]() |