【问题标题】:Why is curl working on my Meteor site but Google cannot seem to crawl my site?为什么 curl 在我的 Meteor 网站上工作,但 Google 似乎无法抓取我的网站?
【发布时间】:2015-07-03 11:46:23
【问题描述】:

我刚刚使用 Meteor Up 部署了一个网站,我正在尝试确定我的网站是否可以被 Google 抓取。

当我执行时

卷曲 www.compmaker.com?_escaped_fragment_=

它返回包含所有文本的页面。此外,当我搜索“compmaker.com”作为搜索查询时,它似乎在描述中列出了我的网站和一些内容。

但是,在 Google Webmaster 中,当我转到 Fetch As Google 并按 Fetch and Render 时,HTML 中缺少内容。此外,Adsense 拒绝了我的网站,因为它看不到任何文字。

所以我想知道,spiderable 真的有效吗?如果不是,为什么当我使用 curl 时,我实际上可以看到 html,但 google 却看不到?

此外,如果我通过 Meteor Up 安装并且我将“setupPhantom”设置为 true,并且我在我的流星项目中将可蜘蛛作为一个包,我还需要什么才能让谷歌抓取我的 Meteor 网站?

我有一种感觉,也许 phantomjs 可能在一开始就可以工作,然后在某个时候停止工作(该网站的谷歌缓存副本是几天前的)并且 curl 正在工作,因为我速度很快-渲染。这是一个合理的解释吗?如果是这样,我如何让 phantomjs 再次重新启动?

【问题讨论】:

  • 您的 routes.js 文件在哪个文件夹中?
  • @CaptSaltyJack - 它在 lib 中,可供服务器和客户端访问(快速渲染所必需的)。为什么?这和这有什么关系?
  • 据我所知,客户端路由不可爬取。

标签: curl meteor seo phantomjs meteor-up


【解决方案1】:

产生与您描述的类似症状的最常见问题是,我们 (Google) 无法访问对渲染至关重要的资源。

在 Fetch and Render 中,您可以在页面底部看到哪些资源在渲染期间加载失败。如果那里显示了一些,我会修复这些:确保服务器快速响应这些资源请求,并且它们没有被 robots.txt 阻止。

【讨论】:

    【解决方案2】:

    我遇到了与您描述的问题有些相似的问题,您可以在此处查看详细信息http://www.themastfarminn.com/php-prob/

    我向托管公司发送了支持票,这是他们的回复:

    |||||||||||||||||||||||||||

    我们最近更新了所有签名帐户的 Mod 安全设置。这将阻止任何在 HTTP 标头中不包含用户代理字符串的请求并发送禁止响应。要解决此问题,您需要更新脚本(curl 脚本)以包含用户代理字符串,然后服务器将允许连接。

    |||||||||||||||||||||||||||

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多