Ajax Crawling:旧方式vs新方式(#!)

前端之家收集整理的这篇文章主要介绍了Ajax Crawling:旧方式vs新方式(#!)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
老方式

当我曾经在需要内容搜索引擎索引的项目中异步加载页面时,我使用了一个非常简单的技术,就是

<a href="page.html" id="example">Page</a>
<script type="text/javascript">
    $('#example').click(function(){
        $.ajax({
            url: 'ajax/page.html',success: function(data){
                $('#content').html(data);
            }
        })
   });
</script>

编辑:我曾经实现了haschange事件来支持JavaScript用户的书签.

方法

最近,Google提出了ajax爬行的想法,在这里阅读:

http://code.google.com/web/ajaxcrawling/

http://www.asual.com/jquery/address/samples/crawling/

基本上他们建议将“website.com/#page”更改为“website.com/#!page”,并添加包含片段的页面,如“website.com/?_escaped_fragment_=page”

使用新方式有什么好处?

对我来说,似乎新的方式在我以简单的方式之前增加了更多的工作和复杂性:我设计的网站在没有ajax的情况下工作,然后我添加了ajax和hashchange事件(以支持后退按钮和书签)在最后阶段

SEO的角度来看,使用新方式有什么好处?

这个想法是使AJAX应用程序可以抓取.根据HTTP规范,URL指的是同一个文件,而不管片段标识符(哈希标记之后的部分).因此,搜索引擎会忽略片段标识符:如果您有指向www.example.com/page#content的链接,则抓取工具将只需要请求www.example.com/page.

使用新的方案,当你使用#!爬虫知道链接是指附加内容的符号.爬网程序将URL转换为另一个(丑陋的)URL,并从您的Web服务器请求它. Web服务器应该用表示AJAX内容的静态HTML进行响应.

编辑关于原始问题:如果您已经定期链接到静态页面,那么这个方案不会帮助你.

原文链接:https://www.f2er.com/ajax/160057.html

猜你在找的Ajax相关文章