Cloudflare 允许搜索引擎爬虫和机器人。如果你观察到爬取问题,或向搜索引擎爬虫或机器人显示了 Cloudflare 质询,请通过本指南中概述的方法排查爬取错误时收集相关信息,然后联系 Cloudflare 支持。
通过 Cloudflare 代理的搜索引擎爬虫请求可能被源服务器上安装的反机器人模块阻止。尝试禁用任何反机器人模块,以防止源站阻止这些请求。
为了优化 CDN 性能,Google 和 Bing 会为使用 CDN 服务的网站分配特殊的爬取速率。特殊爬取速率不会对搜索引擎优化 (SEO) 和搜索引擎结果页 (SERP) 产生负面影响。要更改 Bing 和 Google 的爬取速率,请按照以下指南操作:
- 通过查阅 Google 文档 ↗更改 Google 爬取速率。
- 通过 Bing 文档中的指导更改 Bing 爬取速率:
查看以下建议以防止爬虫错误:
-
使用第三方工具监控网站的性能和可用性:
-
不要通过自定义规则或 IP Access 规则 阻止 Google 爬虫 IP 地址。如果你使用速率限制规则,请确保它们不适用于 Google 爬虫。
通过查阅 Google 关于验证 googlebot IP 地址 ↗的文档,确认 IP 地址是否属于 Google。
-
不要通过自定义规则或 IP Access 规则 阻止美国。
-
不要在
.htaccess文件、服务器配置、robots.txt↗ 或 Web 应用程序中阻止 Google User-Agent。
Google 使用多种 User-Agent ↗ 来爬取你的网站。你可以通过 Google 测试 robots.txt ↗。
- 不要允许爬取
/cdn-cgi/目录中的文件。此路径由 Cloudflare 内部使用,Google 爬取时会遇到错误。通过robots.txt禁止爬取cdn-cgi:
Disallow: /cdn-cgi/
- 确保你的
robots.txt文件允许 AdSense 爬虫 ↗。 - 在服务器日志中还原原始访问者 IP 地址。
以下是最常报告的爬取错误的排查步骤。
HTTP 4XX 错误是最常见的爬取错误类型。Cloudflare 将这些错误从你的 Web 服务器传递给 Google。这些错误可能由多种原因引起,例如 Web 服务器上缺少页面或 HTML 中的链接格式错误。解决方案取决于遇到的问题。
HTTP 5XX 错误表示 Cloudflare 或你的源 Web 服务器遇到了内部错误。要将爬取错误的发生与站点中断关联起来,请监控源 Web 服务器的运行状况。同时通过 Cloudflare 以及直接对源 Web 服务器 IP 监控网站运行状况,可以确定错误是由 Cloudflare 还是源 Web 服务器引起的。
排查步骤因你的域名是通过 Full 还是 CNAME 设置加入 Cloudflare 而异。要验证域名使用的设置,请打开终端并执行以下命令(将 www.example.com 替换为你的 Cloudflare 域名):
dig +short SOA www.example.com
对于 Partial (CNAME) 设置 上的域名,结果响应包含 cdn.cloudflare.net。例如:
example.com.cdn.cloudflare.net.
对于 Full 设置 上的域名,结果响应中列出的 nameserver 包含 cloudflare.com 域名。例如:
josh.ns.cloudflare.com. dns.cloudflare.com. 2013050901 10000 2400 604800 3600
确认域名如何设置到 Cloudflare 后,继续执行适合你域名设置的排查步骤。
CNAME
联系你的托管提供商以调查 DNS 错误,并提供 Google 遇到 DNS 错误的日期。此外,查看 Cloudflare System Status ↗ 页面,了解 Google 遇到错误当天是否有任何网络中断。
Full
联系 Cloudflare 支持,并提供 Google 观察到错误的日期和时间。
如果上述排查步骤无法解决你的爬取错误,请按照以下步骤从 Google Webmaster Tools 仪表板将爬虫错误导出为 .csv 文件。在联系 Cloudflare 支持时附上此 .csv 文件。
- 登录你的 Google Webmaster Tools 账户,并导航到受影响域名的 Health(运行状况) 部分。
- 在左侧导航中点击 Crawl Errors(抓取错误)。
- 点击 Download(下载) 将错误列表导出为
.csv文件。 - 将下载的
.csv文件提供给 Cloudflare 支持。