网站URL静态化
时间:2011-05-13
来源:互联网
URI.静太仳一盲以来都是最基本的SEO要求之一,但近一两年SEO行业对是否一定要做静态化有了一些观念上的改变。4.8.1为什么静态化
现在的网站绝大多数是数据库驱动,页面由程序实时生成,而不是真的在服务器上有-个静态HTML文件存在。当用户访问一个网址时,程序根据URL中的参数调用数据库数据,实时生成页面内容。因此动态页面相对应的URL原始状态也是动态的,包含问号、等号及参数,如下面这种典型论坛的URL:
搜索引擎在发展初期(其实也就是10年前到三四年前而已)一般不太愿意爬行和收录动态URL,主要原因是可能陷入无限循环或收录大量重复内容,造成资源极大浪费。最典型的无限循环就是某些网站上出现的万年历,很多博客都按时间存档,一些宾馆、航班查询网站都经常出现万年历形式,搜索引擎蜘蛛碰到万年历,如果一直跟踪上面的链接,可以不停地点击下一月、下一年,无穷无尽陷入无限循环,每一个日期对应的页面内容也没什么区别。真实用户一眼就能看出这是个日历,但搜索引擎蜘蛛面对的只是一串代码,不一定能判断出其实这是个万年历。
很可能是完全一样的内容,都是型号为12345的红色鞋子。URL中参数顺序不同就是不同的网址,但调用参数一样,因此页面内容是一样的。如果CMS系统设计不周全,这些URL都可能出现在网站上。更麻烦的是有时某些参数可以是任意值,服务器都能正常返回页面,虽然内容全是一样或非常相似的。例如,上面URL中的参数12345改为6789或其他什么数字,服务器很可能也返回200状态码。
所以以前的搜索引擎对动态URL敬而远之,要想网站页面被充分收录,站长需要把动态URL转化为静态URL。4.8.2怎样静态化URL最常见的方法是使用服务器的URL重写模块,在LAMP(Linux+Apache+MySQL+PHP)服务器上一般使用mod rewrite模块,Windows服务器也有功能相似的ISAPI Rewrite 等模块。以LAMP服务器为例,需要启用服务器mod rewrite模块URL重写代码基于正则表达式,每个网站的动态URL结构不同,服务器设置也可能不同,代码也就不同。正则表达式的写法比较复杂,干变万化,通常需要程序员编写。在写URL静态化代码时必须非常小心,错了一个字符,多了一个斜杠等微小的不同,都可能造成灾难性的后果。我本人就遇到过这样的案例。
严格来说,这里所说的URL静态化应该称为“伪静态化”,也就是说服务器上还是不存在相应的HTML文件,用户访问时还是动态生成页面,只不过通过URL 重写技术使网址看起来像是静态的。也有的CMS系统可以实现真正静态化,站长增添产品或文章后,系统会自动生成真实存在的静态的HTML文件。对搜索引擎来说,真正的静态与伪静态没有区别。4.8.3 URL不需要静态化吗近两三年搜索引擎对动态URL的抓取有了很大进步。一般来说URL中有两三个参数,对收录不会造成多大影响。权重高的域名,再多几个问号也不是问题。不过一般来说还是建议将URL静态化,既能提高用户体验,又能降低收录难度。
2008年9月份,Google站长博客发表了一篇讨论动态网址和静态网址的帖子,颠覆了这个SEO界的传统观念。在这篇帖子里,Google明确建议不要将动态URL静态化。Google的帖子有几个要点。 (1) Google完全有能力抓取动态网址,多少个问号都不是问题。(2)动态网址更有助于Google蜘蛛读懂URL含义并进行鉴别,因为网址中的参数有提示性。URL里的参数本身有助于Google理解URL及网页内容,比如language后面跟的参数是提示语言,answer后面跟的是文章编号,sid后面的肯定是Session ID。其他常用的参数包括:color后面跟的一般是颜色,size后面跟的参数是尺寸等。有了这些参数名称的帮助,Google更容易理解网页。将网址静态化后,这些参数的意义通常就变得不明显了,比如这个URL: 就可能使Google不知道哪个是产品序列号,哪个是尺寸。
(3) URL静态化很容易弄错,那就更得不偿失了。比如,通常动态网址的参数调换顺序所得到的页面是相同的,这两个网址很可能就是同一个页面:保留动态网址,Google比较容易明白这两个URL是一个页面,因而自动合并权重。经过静态化后,这样两个网址Google就个容易判断是不是同一个页面,从而可能引起复制内容:再一个容易搞错的是Session ID,也可能被静态化进URL: URL 这样网站将产生大量URL不同、但其实内容相同的页面。 :以,Google建议不要静态化URL。 但是我目前还是建议尽量要静态化URL。原因如下。
(1) Google给的建议是从Google自己出发,没有考虑其他搜索引擎;Google抓取任何动态网址没问题,并不意味着百度、雅虎、必应、搜狗、搜搜等都没问题。(2) Google所说的静态化的弊端,基本上是基于静态化做得不正确的假设。问题是要做静态化就得做正确,假设会做错是没有什么道理的。有几个人会在静态化网址时把Session ID也放进去呢?(3)用户体验。带有参数的URL可能有助于Google读懂内容,但是显然非常不利于用户在一瞥之下理解页面大致内容。看看这两个网址哪个更清晰,更容易读懂,更有可能被点击呢:显然是第二个。除了点击率,长的动态网址也不利于记忆,不利于在邮件、社会化网站等地方抄送给别人
现在的网站绝大多数是数据库驱动,页面由程序实时生成,而不是真的在服务器上有-个静态HTML文件存在。当用户访问一个网址时,程序根据URL中的参数调用数据库数据,实时生成页面内容。因此动态页面相对应的URL原始状态也是动态的,包含问号、等号及参数,如下面这种典型论坛的URL:
搜索引擎在发展初期(其实也就是10年前到三四年前而已)一般不太愿意爬行和收录动态URL,主要原因是可能陷入无限循环或收录大量重复内容,造成资源极大浪费。最典型的无限循环就是某些网站上出现的万年历,很多博客都按时间存档,一些宾馆、航班查询网站都经常出现万年历形式,搜索引擎蜘蛛碰到万年历,如果一直跟踪上面的链接,可以不停地点击下一月、下一年,无穷无尽陷入无限循环,每一个日期对应的页面内容也没什么区别。真实用户一眼就能看出这是个日历,但搜索引擎蜘蛛面对的只是一串代码,不一定能判断出其实这是个万年历。
很可能是完全一样的内容,都是型号为12345的红色鞋子。URL中参数顺序不同就是不同的网址,但调用参数一样,因此页面内容是一样的。如果CMS系统设计不周全,这些URL都可能出现在网站上。更麻烦的是有时某些参数可以是任意值,服务器都能正常返回页面,虽然内容全是一样或非常相似的。例如,上面URL中的参数12345改为6789或其他什么数字,服务器很可能也返回200状态码。
所以以前的搜索引擎对动态URL敬而远之,要想网站页面被充分收录,站长需要把动态URL转化为静态URL。4.8.2怎样静态化URL最常见的方法是使用服务器的URL重写模块,在LAMP(Linux+Apache+MySQL+PHP)服务器上一般使用mod rewrite模块,Windows服务器也有功能相似的ISAPI Rewrite 等模块。以LAMP服务器为例,需要启用服务器mod rewrite模块URL重写代码基于正则表达式,每个网站的动态URL结构不同,服务器设置也可能不同,代码也就不同。正则表达式的写法比较复杂,干变万化,通常需要程序员编写。在写URL静态化代码时必须非常小心,错了一个字符,多了一个斜杠等微小的不同,都可能造成灾难性的后果。我本人就遇到过这样的案例。
严格来说,这里所说的URL静态化应该称为“伪静态化”,也就是说服务器上还是不存在相应的HTML文件,用户访问时还是动态生成页面,只不过通过URL 重写技术使网址看起来像是静态的。也有的CMS系统可以实现真正静态化,站长增添产品或文章后,系统会自动生成真实存在的静态的HTML文件。对搜索引擎来说,真正的静态与伪静态没有区别。4.8.3 URL不需要静态化吗近两三年搜索引擎对动态URL的抓取有了很大进步。一般来说URL中有两三个参数,对收录不会造成多大影响。权重高的域名,再多几个问号也不是问题。不过一般来说还是建议将URL静态化,既能提高用户体验,又能降低收录难度。
2008年9月份,Google站长博客发表了一篇讨论动态网址和静态网址的帖子,颠覆了这个SEO界的传统观念。在这篇帖子里,Google明确建议不要将动态URL静态化。Google的帖子有几个要点。 (1) Google完全有能力抓取动态网址,多少个问号都不是问题。(2)动态网址更有助于Google蜘蛛读懂URL含义并进行鉴别,因为网址中的参数有提示性。URL里的参数本身有助于Google理解URL及网页内容,比如language后面跟的参数是提示语言,answer后面跟的是文章编号,sid后面的肯定是Session ID。其他常用的参数包括:color后面跟的一般是颜色,size后面跟的参数是尺寸等。有了这些参数名称的帮助,Google更容易理解网页。将网址静态化后,这些参数的意义通常就变得不明显了,比如这个URL: 就可能使Google不知道哪个是产品序列号,哪个是尺寸。
(3) URL静态化很容易弄错,那就更得不偿失了。比如,通常动态网址的参数调换顺序所得到的页面是相同的,这两个网址很可能就是同一个页面:保留动态网址,Google比较容易明白这两个URL是一个页面,因而自动合并权重。经过静态化后,这样两个网址Google就个容易判断是不是同一个页面,从而可能引起复制内容:再一个容易搞错的是Session ID,也可能被静态化进URL: URL 这样网站将产生大量URL不同、但其实内容相同的页面。 :以,Google建议不要静态化URL。 但是我目前还是建议尽量要静态化URL。原因如下。
(1) Google给的建议是从Google自己出发,没有考虑其他搜索引擎;Google抓取任何动态网址没问题,并不意味着百度、雅虎、必应、搜狗、搜搜等都没问题。(2) Google所说的静态化的弊端,基本上是基于静态化做得不正确的假设。问题是要做静态化就得做正确,假设会做错是没有什么道理的。有几个人会在静态化网址时把Session ID也放进去呢?(3)用户体验。带有参数的URL可能有助于Google读懂内容,但是显然非常不利于用户在一瞥之下理解页面大致内容。看看这两个网址哪个更清晰,更容易读懂,更有可能被点击呢:显然是第二个。除了点击率,长的动态网址也不利于记忆,不利于在邮件、社会化网站等地方抄送给别人
作者: 145ok 发布时间: 2011-05-13
学习了哦
作者: 五月五音符 发布时间: 2011-05-13
还是静态的好些吧
作者: 与风同行 发布时间: 2011-05-13
比较一下咯~~
作者: 丽丽321 发布时间: 2011-05-13
赞同这种说法
作者: xlhacoo 发布时间: 2011-05-12
全面分析
作者: lc4148700 发布时间: 2011-05-12
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28