6

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

4

6 回答 6

9

是的,创建一个对搜索引擎友好的 AJAX 站点要困难得多。仅仅为了搜索引擎爬虫,让您的网站在没有 Javascript 的情况下工作到基本水平可能是值得的。

不,搜索引擎抓取您的 AJAX 站点并非不可能(只要该搜索引擎是 Google)。您只需要提供一点帮助:请参阅Google 支持页面上的使 AJAX 应用程序可抓取。


注意:这个答案现在已经非常过时了。谷歌仍然为如何处理这个问题提供了很好的建议——而且比以前更容易了。

于 2011-01-13T22:24:16.963 回答
5

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

然而,Ajax 真的应该只用作改善用户体验的一种手段——应该总是有一个基本级别的 SEO 功能和(更重要的是恕我直言),以防最终用户没有启用 JavaScript。

换句话说,如果用户可以使用 Ajax 来改善他们的体验,但他们应该仍然能够在没有 JavaScript 的情况下充分使用网站。(这都是关于“优雅退化”之类的。)

于 2011-01-13T20:08:36.310 回答
3

请记住将 href 参数放在指向类似服务器端功能的 [a] 标记中。这样,机器人就可以对内容进行索引。

这篇文章可能有用:

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

于 2011-01-13T20:08:21.367 回答
1

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

但是,如果某些内容触发了 AJAX 内容,您可以做什么,让它也成为一个页面的正常链接。EG,如果你使用类似的东西:

<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;
}
?>
于 2011-01-13T20:48:00.773 回答
1

如果使用正确,它可以。

如果操作不当,AJAX 有两个主要的 SEO 问题:

  • 找不到内容
  • 找不到链接

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

在那里可以找到正确做法的概述:http: //www.internetmarketinginc.com/blog/making-ajax-seo-friendly/

AJAX 对 SEO 不友好的主要问题是 JavaScript 的性质,它是客户端。浏览器运行它而不是服务器。但是,如果数据也是在服务器端提供的,那么谷歌就可以看到这一点。

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

于 2012-07-20T00:30:36.727 回答
0

是的,AJAX 可以是 SEO 友好的,单页界面(AJAX 密集型)应用程序也可以在禁用 JavaScript 的情况下工作(与 SEO 兼容)。

看看这个演示

于 2011-01-27T11:45:52.927 回答