2007-09-22

如何利用友好URL改善可用性

来源: 开发者在线 作者: 评论 0 条
 

做为进入Web的大门,URLs构成了用户体验的一个重要部分。Web开发人员需要处理的问题之一就是提供友好的URLs,使得在输入时即易识别又易输入。本文围绕这一主题探讨了几个问题和一些可能的解决方案。

为什么使用友好的URL

提供用户友好的URLs的概念已经出现很长时间了,但是一些开发人员仍然经常忽略这一点。最基本的想法就是提供一个易于理解的Web地址,它有以下好处:

  • 便于交流和记忆:当前或潜在用户可以很轻易的记住地址以便个人应用或通过语言、电子邮件或其它方式告知其他人。
  • 足够短小便于传递:这是交流的一个方面,地址应该短小一些以便于通过电子邮件无约束的传递。当地址包绕的太严密时,地址就被破坏了,用户不得不重新推想它。
  • 易于猜测:用户应该能够根据它们要完成的任务识别一个地址(在合理的情况下)。Google网站的新闻主页就是一个很好的例子,你可以通过在Google地址后添加news如下www.google.com/news就可以得到该页。同样的例子,Amazon.com的书籍主页可以通过以下地址的到www.amazon.com/books。
  • 可读性:URLs应该短小易读,以便于出现在公司的小册子上。
  • 便于输入:当在浏览器的地址栏通过普通键盘或移动设备输入时,地址应该便于手指输入。对于移动用户,他们经常使用受限的输入设备,所以地址的长度是一个主要问题。

对于静态页面来说通过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
共2页: 上一页 1 [2] 下一页

(本文仅表明作者个人观点,不代表本站及其管理员立场.) 推荐 收藏 投稿 打印 返回 关闭
上一篇:怎么系统的学习 Web 标准?  
下一篇:网页设计中文本排版的技巧和细节
    评论加载中…
 推荐文章
     

网站首页  -  网站地图 -   站长论坛  -  网站投稿  -    -  网站管理
Copyright © 2008 芜湖站长站 All Rights Reserved 皖ICP备07500611号