更友好的网站url设计

开发
URL,统一资源定位符,这是众所周知的。它是用于完整地描述Internet上网页和其他资源的地址的一种标识方法。本文主要介绍URL的设计原则,一起开看。

url重写是将web请求重定向到指定url的过程,比如:用户输入:/message/page/5 重定向到 message.aspx?page=5,这样的好处是方便记忆,也更有利于SEO优化等,通过使用更友好的url地址,恰好也回归了互联网设计之初对url(统一资源定位符 http://zh.wikipedia.org/wiki/URL)的定义。

这儿介绍一下我们在实际使用中,整理出的url设计原则

1、简洁直观

命名可以用缩写简写,例如:/cate/book

2、层次性,从大到小,以用户为中心

例如:http://www.site.com/my/friend_list

3 、大小写一致,末尾的斜杠风格一致

推荐使用小写加下划线的方式,这样的好处是有利于seo优化,同时对于搜索引擎来讲,末尾有斜杠与没有斜杠会认为是2个不同的路径。

4 、提前规划

在站点设计时就全面使用url重写,这样的好处是节省后期修改的工作量,同时不留死角,不出现.aspx这样的访问路径。

5、url重写与实际的文件位置命名一致

这样的好处是,修改某个功能时可以快速找到相关的文件。

6 、可以考虑用简短的路径指向深层次的文件

例如:/support/tools/flash10.exe 可以映射为:/InstalFlash.exe

这样一方面是缩短路径,便于告知用户安装播放器,另一方面是如果以后升级到11的版本,可以还是用这个路径,只是指向flash11.exe而已。

7、大小分类的设计风格

以一个视图有大小分类为例,可以有:/bigcate_smallcate 或 /bigcate/smallcate 2种风格。

/bigcate_smallcate:好处是路径层次更短一些。

/bigcate/smallcate:好处是,如果用户比较熟悉站点,自己按需要修改小分类的名称就可以快速访问某个小分类的内容。

8、复杂参数的url重写

假设不是层次分明的结构,而是有多个参数,或参数不定时,可以:/site/book_find/?q=java&hot=1&timebegin=2010-1-1

9、url重写时,指定默认参数

假设有一个hotbook.aspx可以接收一个count参数来指定出现的条目数,这时就可以在url重写时就指定这个count,例如:/hotbook/ 在配置里可以映射为:hotbook.aspx?count=5,这样的好处是如果以后要调整热门图书的显示数量只要在url重写的配置里修改即可,避免修改代码。

URL最大缺点就是当信息资源的存放地点发生变化时,必须对URL作相应的改变。因此人们正在研究新的信息资源表示方法,例如:URI (Universal Resource Identifier)即“通用资源标识”(参见RFC 1630)、URN (Uniform Resource Name)即“统一资源名”和URC(Uniform Resource Citation)即“统一资源引用符”等。

【编辑推荐】

  1. 8.2.1 URL的概念及其工作原理
  2. 6.2.3 使用HTTP模块重写URL
  3. 简化 Outlook Web App 的 URL
  4. WebSphere Portal 中 URL 背后的秘密

 

责任编辑:于铁 来源: 站长之家
相关推荐

2011-05-12 09:18:17

Twitter手机版Web AppTwitter

2014-06-27 09:34:03

AngularJS

2016-11-04 13:00:55

Asynces6Javascript

2021-12-21 21:58:24

数字故宫小程序

2014-01-09 10:40:38

Cocos3.0 Be触控

2023-02-01 14:08:53

JavaScriptURL安全

2011-05-30 12:59:46

网站设计

2013-08-28 10:20:56

2018-12-18 08:30:01

MySQLMongoDB数据库

2013-03-25 16:35:04

微信微信公众平台开发者

2010-05-20 13:56:17

Fedora 13

2021-12-31 09:04:39

软件设计开发函数

2012-08-17 17:01:20

Windows 8Skype

2012-06-21 10:31:21

Win 8LinuxOS

2011-06-07 15:42:25

优化URL

2017-11-15 09:49:03

运维服务器端系统

2017-08-14 15:59:46

python权限编码

2017-10-25 08:44:03

NVMe SSD数据存储

2015-05-15 13:21:22

URL系统设计

2021-06-18 11:17:36

URL数据库MySQL
点赞
收藏

51CTO技术栈公众号