数据库驱动的网站需要将URL静态化,一直以来都是SEO最基本的要求,可以算是个常识性的东西。现在恐怕也没有不是数据库驱动的网站了吧。
近几年SEO行业一致认为,URL中带2-3个问号不是问题,搜索引擎通常都能收录,尤其是权重高点的域名,更多几个问号也不是问题。但无论如何一般还是建议URL静态化。
2008年9月份,Google站长博客发表了一篇讨论动态网址还是静态网址的帖子,却颠覆了这个说法。在这篇帖子里,Google明确建议不要将动态URL静态化,而是保留那种长长的,带问号参数的动态URL。Google黑板报和中文网站管理员博客都做了翻译和转载,大家可以查看。
从留言和我看到的博客来看,有不少人还真觉得有道理,准备按照Google说的做了。
这是比较少见的,我十分不以为然的,Google给的SEO建议。
Google的帖子有几个要点。
一是Google完全有能力抓取动态网址,多少个问号也不是问题。这一点基本靠谱。但如果URL中出现个十几二十个问号和参数呢?Google会怎样看待?即使有能力抓取,又一定会愿意抓取吗?其它搜索引擎又会怎样处理?
第二,动态网址更有助于Google蜘蛛读懂URL含义,并进行鉴别,因为网址中的参数有提示性。比如Google举了这个例子:
www.example.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.example.com/shoes/red/7/12/men/index.html
就可能使Google不知道哪个是产品序列号,哪个是尺寸等。
第三,网址静态化很容易弄错,那就更得不偿失了。比如通常动态网址的参数调换顺序,所得到的页面其实是相同的,比如这两个网址很可能就是同一个页面:
www.example.com/article/bin/answer.foo?language=en&answer=3
www.example.com/article/bin/answer.foo?answer=3&language=en
保留动态网址,Google还比较容易明白这是一样的网页。而经过静态化后,这样两个网址Google就不容易判断是不是同一个页面,从而可能引起复制内容:
www.example.com/shoes/men/7/red/index.html
www.example.com/shoes/red/7/men/index.html
再一个容易搞错的是session ID,也可能被静态化进URL:
www.example.com/article/bin/answer.foo/en/3/98971298178906/URL
这样网站将产生大量URL不同,但其实内容相同的页面。
所以,Google建议不要静态化URL。
但是我还是建议要静态化。原因是:
首先,Google给的建议是从Google自己出发,而没有考虑其他搜索引擎。Google抓取动态网址没问题,并不意味着雅虎,百度,微软等等就都没问题。尤其是中文网站,Google不是老大。实际上,百度直到现在,2021年,对多个问号的URL还是不太愿意抓取的。
第二,Google所说静态化的坏处,是基于静态化做得不正确的假设上。问题是要做静态化就得做正确,假设会做错是没有什么道理的。有几个人会静态化网址时还把session ID放进去呢?
第三,Google的建议是典型的有利于自己,而不利于用户。带有问号参数的URL可能有助于Google读懂内容,但是显然非常不利于用户在一撇之下理解网站结构及大致内容。看看这两个网址哪个更清晰,更容易读懂,更有可能被点击呢?
www.example.com/product/bin/answer.foo?language=en&productID=3&sid=98971298178906&cat=6198&&query=URL
www.example.com/product/men/shoes/index.html
显然是第二个。
而且长的动态网址,也不利于记忆,不利于在邮件、社会化网站等地方抄给别人。
总之,虽然Google这么明确的建议保留动态网址,我还是建议正相反,尽量将URL静态化。
沙发。
非常赞,有自己的观点!
是,我还是比较喜欢静态网站。
做中文站的话还得看百度眼色,不能只顾着GG,可以静态化还是静态化好,个人认为
静态化不只是为了搜索引擎,还可以减轻服务器的压力,如果在线人数比较多的话优势比较明显,视情况而定,也不能一概而论吧
晕,伪静态会稍微增加服务器的负担,怎么成了减轻,真静态才会减轻啊。那谁~~
看来看待问题的时候需要辨证的观点,GOOGLE说的不一定全是好的,非常赞同ZAC的观点,因为无论是从链接结构和长度来说,静态化的URL应该比动态化的URL更容易理解,而且也更容易记忆,GOOGLE不是一直宣称一切以用户为主,这次改行道而为之呢?
我还想着不静态化了呢,看来不静态化是不行的
不过对于虚拟主机,对静态化我是不知道怎么弄了
估计只能通过代码来解决了
说到底大家还是靠百度来流量的多,所以静态化还是必须的。
Zac说的有道理哦,但我认为要是自己的主机静态化简单就尽量静态化,要不然就顺其自然,不要强求!
对于参数短的,比如www.example.com?show.php?id=123和 http://www.example.com/show/3 来说,如果仅仅是伪静态化,我觉的对于se来说,区别不大;伪静态化还会造成文件(如图片)路径的困惑。
除非真正静态化,但真正静态化后,互动性的效果就差;
比如要改一些小地方 就要重新生成,也是一个弊端。
我觉得Google的意思是:如果静态化做的不好,还不如不要静态化;如果静态化能做好的话当然可以做
Google举的那些静态化做的不好的例子应该不是凭空捏造的,而是实际碰到的例子,世界上那么多站,显然不是每个人都知道怎么静态化才是正确的 :)
同意zac的观点。静态化的时候可以加一些和页面内容想吻合的关键字进去,也方便用户记住页面
要是静态化不好还不如不静态化来得好:)建议是给普通用户而不是给seoer的。呵呵!
是否静态化还是从自身的网站实际出发吧。对于小型网站 http://www.example.com?id=123 我看没多少必要。大的网站到是可以考虑。务必静态化正确才好呀。呵呵…….
支持真实静态化,反对伪静态化
有一点是肯定的:站在用户的角度去做网站。
不管搜索引擎有多牛,它最终还会围着用户转。
我觉得,程序员在开发网站时,尽量少在网址中带参数这才是正道,如果参数不多的话,比如只有一两个,做不做静态化,对于seo的效果来说,可能都差不多。
URL静态化是在建站时基础,不过我个人认为,如果网站在建站时没有静态化,而目前动态的路径又非常简单,如:view.asp?id=152,这种特别简单的动态就无需要静态化了,因为这种路径也是很清晰的,各个搜索引擎收录也是没有问题的。
谢谢解惑,我以前一直觉得动态和静态其实没什么所谓,但是看了以后茅塞顿开,静态地址起码可以方便能看懂url的用户,也能方便copy传播。
HOHO..
ZAC的角度已经脱离了。单一盯着某个搜索引擎,单一盯着排名。
多角度考量。。
主要还是用户角度。
如果做百度呢?
个人觉得还是静态化,除非代价很大
对于大站如此,对于不到一百个页面的小站呢?
比如用asp做得企业站?
记得之前看过,当时也没感觉,没有什么大动静的!
对于大型网站页面多,你想静态化的话,坐起来估计要费事一些,有的程序可以自动生成伪静态地址,即使不能生成,照google的说法是在seo的时候就没必要太偏执于静态化。
但是静态化url面向人的时候,可读性比较好,这一点zac说的我很赞成,我自己的网站实践是主要目录的引导页面是用伪静态url,而普通的内容页面有时候我就按照程序给出的地址,而且文章多,每一个文章你都要给它一个静态地址的话,要先规划好不同内容的不容目录结构,我有时候嫌累就不写了。
程序在处理可读性差的数据时,依靠程序的自动识别模式,而人是不喜欢的,人喜欢理解分层的结构化url。
还是喜欢静态的。
Zac说得很对,我也不支持SEO动态化,一个长的,不知所谓的域名很容易让人感到是垃圾,所以还是静态化比较用户友好。
静态固然好,不过不要为了静态而一味的追求静态化,那会很累。
有权重的网站必竟是少数.所以很多网站带两个问号以上时,就不收录了.百度就是这样的.把它改成一个问号了,就收录了.我测过了.
尊重ZAC的说法,并且改成文章提供的格式。
从方便用户来说,静态是必然的。。其次是蜘蛛,就算知道id是什么意思,那又如何?
具体情况具体分析,综合用户、SE和站点维护者去考虑。
另:你的大作还没出版吗?不会在新加坡也要买书号吧?
赞同 大哥 观点 我用的 discuz论坛 和 z blog
不知道这个博客http://blog.sina.com.cn/s/blog_538412ca0100bblv.html是不是Zac的?内容完全一样。
Google 擅长抓取动态网址,这个说法真的很好笑!支持ZAC,静态化才是硬道理!
不管怎么说,静态地址可以减轻服务器负载。
动态一样可以啊
呵呵,喜欢静态化,用户更容易看懂栏目分布哦
英雄所见略同:D
ZAC看问题确实全面。其实好多个看问题太绝对了,动态、伪静态、静态 在SEO、系统负载、交互等方面各有优势,要综合分析,不是简单的好或不好。看你的需求而定。
不建议使用伪静态,可能最完美的方式也是它。
http://www.shyedu.net/it-website/dynamic-urls-vs-static-urls-112.html
支持静态
我的理解是URL带参数不妨碍GOOGLE收录,
我们支持静态化是因为它既可以被收录,更方便用户有针对性的对关键字进行搜索
如何进行静态化的具体操作?
其实针对这一点,我觉得应该根据个人的网站来说明的。
如果你的网站的流量从谷歌来的比较多,可以考虑下谷歌的建议。
但是如果像我的网站,www.whshuma.com 百度来的流量多,我可能会采取 zac大哥的做法。而且我也正式这么做的。呵呵
其实想我们电子商务的网站,这么做比较靠谱。呵呵
动态、伪静态、静态 在SEO、系统负载、交互等方面各有优势,要综合分析,不是简单的好或不好。看你的需求而定。确实如此的!
还是生成.HTML的更好!
Google的建议是典型的有利于自己.非常认同.
各个搜索引擎弄否识别是伪静态化的还是真实的静态化的啊
靠.搜索引擎连动态页面的URL都不认识还叫搜索引擎,你也太小看搜索引擎了吧!提取URL字符串是大部分程序员都能搞定的(正则表达式一行搞定),更不用说是搜索引擎了!
ZAC能不能讲讲动态网站的静态化方法,我想着不仅仅是个程序问题
除了技术问题,就是URL的设计问题,可以参考这篇帖子:
http://www.chinamyhosting.com/seoblog/2006/10/06/url-tips/
不知道,是否对网站有帮助
博主分析的很透彻,补充一点,如果是生成静态页面的纯静态还有个大家共识的好处就是数据库压力减小了,同样的性能就相当于增加了,呵呵
呢我重写一下配置文件,给他做成伪静态,这样算不算静态那?
还是支持静态化页面,对网站优化比较好。。
个人认为伪静态不如动态
1.伪静态耗服务器资源
2.伪静态的规则写不好还真像谷歌说的~
文章提到的可以链接到别的网站的瞄文字都无法链接到,而链接到内站的就可以,这样想进而了解相关内容都没办法
我个人认为并不是非要做URL静态化就一定好,要根据自己网站系统,服务器等原因 或者技术等实际情况选择适合自己的优化方案
在静态页面上使用动态参数,会造成spider多次和重复抓取
针对百度来说,是这样滴~
没想到这个问题早在4年前就在讨论了,可见搜索引擎的发展看似迅速实则迟缓(搜索引擎内核)。
如果是考虑中国大部分地区的网速的话,还是静态网页好一点。我是这么感觉的
还是要静态化吧,在中国百度才是老大。等百度出公告了再考虑!!
google比百度强大
我现在有权重了,再静态化,是不是不好呢?
应该要静态化吧