网站开发的URL的设置方法,URL需不需要静态化
关于网站开发的时候URL的设置问题,应该选择动态的URL地址,还是应该选择静态化的URL地址,网站开发行业内已经争论过非常久了。下面网我根据Google的情况来分析一下网站开发的URL设置的问题。
一是Google完全有能力抓取动态网址,多少个问号也不是问题。这一点基本靠谱。
第二,动态网址更有助于Google蜘蛛读懂URL含义,并进行鉴别,因为网址中的参数有提示性。比如Google举了这个例子:
www.ymars.com/article/bin/answer.foo?language=en&answer=3&sid=98971298178906&query=URL
URL里的参数都有助于Google理解URL及网页内容。比如language后面跟的参数是提示语言,answer后面跟的是文章编号,sid后面的肯定是session ID。其他常用的包括color后面跟的参数指的是颜色,size后面跟的参数是尺寸等。有了这些参数的帮助,Google更容易理解网页。
而将网址静态化后,这些参数的意义通常就变得不明显了。比如这个URL:
www.ymars.com/shoes/red/7/12/men/index.html
就可能使Google不知道哪个是产品序列号,哪个是尺寸等。
第三,网址静态化很容易弄错,那就更得不偿失了。比如通常动态网址的参数调换顺序,所得到的页面其实是相同的,比如这两个网址很可能就是同一个页面:
www.ymars.com/article/bin/answer.foo?language=en&answer=3
www.ymars.com/article/bin/answer.foo?answer=3&language=en
保留动态网址,Google还比较容易明白这是一样的网页。而经过静态化后,这样两个网址Google就不容易判断是不是同一个页面,从而可能引起复制内容:
www.ymars.com/shoes/men/7/red/index.html
www.ymars.com/shoes/red/7/men/index.html
再一个容易搞错的是session ID,也可能被静态化进URL:
www.ymars.com/article/bin/answer.foo/en/3/98971298178906/URL
这样网站将产生大量URL不同,但其实内容相同的页面。
所以,Google建议不要静态化URL。
但是我还是建议要静态化。原因是:
首先,Google给的建议是从Google自己出发,而没有考虑其他搜索引擎。Google抓取动态网址没问题,并不意味着雅虎,百度,微软等等就都没问题。尤其是中文网站,Google不是老大。
第二,Google所说静态化的坏处,是基于静态化做得不正确的假设上。问题是要做静态化就得做正确,假设会做错是没有什么道理的。有几个人会静态化网址时还把session ID放进去呢?
第三,Google的建议是典型的有利于自己,而不利于用户。带有问号参数的URL可能有助于Google读懂内容,但是显然非常不利于用户在一撇之下理解网站结构及大致内容。看看这两个网址哪个更清晰,更容易读懂,更有可能被点击呢?
www.ymars.com/product/bin/answer.foo?language=en&productID=3&sid=98971298178906&cat=6198&&query=URL
www.ymars.com/product/men/shoes/index.html
显然是第二个。
而且长的动态网址,也不利于记忆,不利于在邮件、社会化网站等地方抄给别人。
总之,虽然Google这么明确的建议保留动态网址,我还是建议大家正相反,尽量将URL静态化。