ajax应用如何做好seo
google发布了"make ajax application crawable"相关规范。具体详细见:http://code.google.com/web/ajaxcrawling/docs/specification.html
对开发ajax应用,这份规范还是很有意义的。
其中最重要提出了两个概念:
pretty-url和ugly-url,google定义如下:
- Pretty URL: Any URL containing a hash fragment beginning with
!
, for example,www.example.com?myquery#!key1=value1&key2=value2
- Ugly URL: Any URL containing a query parameter with the key
_escaped_fragment_
, for example,www.example.com?myquery&_escaped_fragment_=key1=value1%26key2=value2
.
其主要建议就是我们在开发ajax应用时,要注意url的表达,正确的使用pretty-url,爬虫就能够将这个url解析出来,成为ugly-url,也就能从我们主动发起
ajax请求一样的效果。
比如,
www.joy.cn/video/play?3#load=full ,点击这个链接,我们主动发起ajax请求为,www.joy.cn/video/play=3&load=full
www.joy.cn/video/play?3#load=simple ,点击这个链接,我们主动发起ajax请求为,www.joy.cn/video/play=3&load=simple
这样两个地址,ajax请求可以返回不同的内容。但是由于“#”后内容不会被发送给服务器,所以对搜索引擎而言,这两个连接是一样的(www.joy.cn/video/play?1
),损失了SEO效果。
google新的规范则解决了这个问题,但目前局限于google爬虫有效。
如何解决呢?下面我们继续。。。。
规范中指出,将“#”替换成"#!" ,就变成了google所谓的pretty-url,也就能满足它的要求了。
www.joy.cn/video/play?3#!load=full ,点击这个链接,我们主动发起ajax请求为,www.joy.cn/video/play=3&load=full
www.joy.cn/video/play?3#!load=simple ,点击这个链接,我们主动发起ajax请求为,www.joy.cn/video/play=3&load=simple
而对google爬虫而言,它遇到这样的链接,则会转化成
www.joy.cn/video/play=3&_escaped_fragment_=load=full和
www.joy.cn/video/play=3&_escaped_fragment_=load=simple
两个不同搜索地址,而最终通过google.com搜索出来的时候,还是www.joy.cn/video/play=3#!load=simple这样的pretty形式。
最后贴个流转图:
posted on 2010-05-12 23:36 flyingchen 阅读(2167) 评论(0) 编辑 收藏 举报