AJAX真的是SEO友好吗?

时间:2011-01-13 20:03:07

标签: ajax search-engine web-crawler seo

现在有了Web 2.0,趋势是AJAX,市场上有许多推广AJAX的现有框架,但是AJAX真的对SEO很友好吗?

6 个答案:

答案 0 :(得分:9)

是的,制作一个对搜索引擎友好的AJAX网站要困难得多。为了单独的搜索引擎抓取工具,可能值得努力让您的网站在没有Javascript的情况下运行到基础级别。

不,搜索引擎抓取您的AJAX网站并不是不可能的(只要该搜索引擎是Google)。您只需要提供一些帮助:请参阅Google支持页面上的Making AJAX Applications Crawlable


注意:这个答案现在已经过时了。 Google still provide good advice for how to deal with this - 它比以前容易。

答案 1 :(得分:5)

不,Ajax对SEO不友好,因为蜘蛛等不会执行任何Ajax调用。

然而,Ajax应该只是用作改善用户体验的一种手段 - 在最终用户没有启用JavaScript的情况下,SEO和(更重要的是恕我直言)应该始终具有基本级别的功能。

换句话说,如果用户可以通过各种方式使用Ajax来改善他们的体验,但他们仍然可以在没有JavaScript的情况下完全使用该网站。 (这完全是关于“优雅的退化”等等。)

答案 2 :(得分:3)

请记住将href params放在指向类似服务器端功能的[a]标签中。这样,内容可以被机器人索引。

这篇文章可能很有用:

http://www.singlegrain.com/blog/creating-an-seo-friendly-site-using-ajax

答案 3 :(得分:1)

简化的AJAX解决方案对SEO来说太可怕了。请记住,蜘蛛等会忽略javascript和CSS(查看禁用这些内容的页面来模拟它)。

你可以做些什么,如果有什么东西触发了AJAX内容,那么它也是一个到页面的普通链接。 E.G.,如果你使用类似的东西:

<a href="my/resource" target="ajax_panel_name">Load AJAX</a>

然后使用Javascript功能包装它,确保链接本身将您带到适当的资源。如果资源是普通链接,您可以将资源设置为显示整页,如果是XHR请求,则只显示AJAX内容。

以下代码(在PHP中)显示了如何检测请求是HTML还是XHR(请求参数至少在IE8,FF3,Safari,Opera,Chrome中可用):

<?php
function xhr_request() {
    if (strpos($_SERVER['HTTP_ACCEPT'], 'text/javascript') !== FALSE) {
        return TRUE;
    }
    return FALSE;
}
?>

答案 4 :(得分:0)

是的,AJAX可以是SEO友好的,Single Page Interface(AJAX密集型)应用程序也可以禁用JavaScript(SEO兼容)。

看看this demo

答案 5 :(得分:0)

如果使用得当可以。

如果做错了,AJAX有两个主要的SEO问题:

  • 无法找到内容
  • 无法找到链接

另一个小问题是失去关键字焦点。

有关正确行事的概述:http://www.internetmarketinginc.com/blog/making-ajax-seo-friendly/

  

AJAX不是SEO友好的主要问题是JavaScript的本质是客户端。浏览器运行它而不是服务器。但是,如果数据也是服务器端提供的,那么Google就没有问题。

     

这里的主要关键是让AJAX优雅地降级。意思是即使JavaScript已关闭,一切仍然有效,它可能无法以相同的方式工作,但它仍然有效,内容仍然存在。如果内容总是使用document.write和innerHTML,那么很可能你会遇到SEO问题。