【问题标题】:Issue with Google AJAX crawling, returning the snapshot URL's instead of the hashbang URL'sGoogle AJAX 抓取问题,返回快照 URL 而不是 hashbang URL
【发布时间】:2012-11-26 10:25:22
【问题描述】:

我刚刚实现了ajax爬取,我的网址是:http://acs-germany.de/#!en/homepage 该网站刚刚被编入索引,我在这里查看搜索结果: https://www.google.at/#hl=en&q=+site:acs-germany.de+acs-germany.de

您会注意到被编入索引的 URL 包含“片段”。这是我系统上存在的一个文件夹,其中包含“ajax”(或更好的 dhtml)内容的 HTML 快照。当跟随该 URL 时,会提供快照,这反过来会破坏应用程序,因为应用程序在半生不熟的标记之上被实例化,从而使网站 FUBAR。

我用的是apache,我的URL重写相关规则如下:

Options -MultiViews
#Rewrite queries from google to the right files
RewriteEngine On

RewriteCond %{QUERY_STRING} ^_escaped_fragment_=(.*)$
RewriteRule ^(.*) http://acs-germany.de/fragments/%1.html?

直截了当: 该站点位于 http://acs-germany.de ,当 JS 处于活动状态时,它会设置一个 hashbang,将浏览器的位置指向 http://acs-germany.de/#!en/homepage 。 在这个程度上,我期望带有 hashbangs 的 url 是被谷歌索引的,而不是重写的 URL。

这可能是什么问题?

【问题讨论】:

  • 进一步研究表明我在我的 html 页面中忘记了以下内容: 。我现在必须等到页面被重新索引,看看是否是原因。

标签: ajax apache seo


【解决方案1】:

您在片段文件夹中的文件是可索引的,因此如果 Google 找到它们,它们将被编入索引。

Google 将检查您的网址的 _escaped_fragment_= 版本以获取内容。您正在 302 将其重定向到片段文件夹版本。

这不是您的 .htaccess 代码所暗示的。有没有你没有告诉我们的 [R]?

我怀疑重定向会混淆 Google 的系统,他们最终会将您的片段文件夹文件编入索引。

我建议您简化事情并完全按照 Google 的要求去做。 _escaped_fragment_= URL 应该直接返回页面的基本内容。

然后您可能希望将这些片段文件夹文件 301 重定向回 #!版本,以鼓励 Google 为正确的内容编制索引。

说实话,我看不出有任何理由让这个网站基于 AJAX。每次点击似乎都完全重新创建了页面。 AJAX 只是更新页面的一部分。

【讨论】:

  • 感谢您的意见。没有 [R] 我没有告诉你,老实说,我想不出如何简化这一点:我有一个重写规则,它检测到一个请求并提供一个物理文件。我不能使 escaped_fragment 成为物理文件,因为它是查询参数的一部分。关于“为什么”这是用 JS 制作的,因为那是我喜欢做的事情,没有真正的理由深入了解这一点。对不起,我不太明白你的建议,你能再解释一下吗?谢谢
  • 也可以说该网站是由一个ISP的@#%@托管的。我第一次尝试添加重写规则在他们的基础设施上失败了,但在我的基础上工作。谁知道他们在 curatins 后面还做了什么。
  • 您可以使任何 URL 看起来像一个物理文件。您的 .htaccess 代码看起来应该这样做。它不应该重定向,而只是直接返回内容。但它正在重定向!这是我将通过消除开始测试的地方。删除东西,看看它的行为。是那个代码控制它。如果它被删除,重定向仍然在发生。是否涉及多视图。那里是否有其他可能影响事物的代码。如果您完全删除文件等会发生什么。
【解决方案2】:

我遇到了同样的问题,我修复了它,从 RewriteRule 中删除了 http:// 部分。试试这个

RewriteRule ^(.*) /acs-germany.de/fragments/%1.html?

RewriteRule ^(.*) /fragments/%1.html?

使用 http:// 会导致 Apache “重定向”而不是“重写” URL

【讨论】:

    猜你喜欢
    • 2012-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-20
    • 2011-08-04
    • 1970-01-01
    • 2019-05-16
    • 2014-01-19
    相关资源
    最近更新 更多