如果 AWS 资源正被用于爬取我的网站,我该怎么办?

1 分钟阅读
0

AWS 资源正被用于爬取我的网站。我该怎么办?

简短描述

最佳实践是通过创建或修改您的 robots.txt 文件来防止您的网站被爬网程序爬取。robots.txt 是监管网络爬取活动的公认标准。

通过修改您的 robots.txt 文件,可以影响以下内容:

  • 哪些爬网程序可以爬取您的网站。
  • 爬网程序可以爬取哪些页面。
  • 爬网程序爬取页面的速率。

如果在 AWS 资源上运行的爬网程序不遵守您的 robots.txt 文件,请提交滥用报告

解决方法

1.创建或修改 robots.txt 文件

robots.txt 文件列出了针对爬网程序的所有限制。该文件附加到网站的根域后,可以停止或减慢爬网程序的速度。

请检查您的日志,了解您想要停止的爬网程序的 User-agent 名称。要阻止爬网程序爬取您的域中的任何页面,请添加 User-agent 名称到您的 robots.txt 文件中:

User-agent: crawler
Disallow: /

**注意:**将 crawler 替换为爬网程序的 User-agent 名称。

您可以在新文本块中为每个爬网程序定义不同的规则。例如,假设您想要完全阻止 crawler1 爬取您的页面。但您还希望允许 crawler2 以更低的速度爬取您的页面:

User-agent: crawler1
Disallow: /

User-agent: crawler2
Crawl-delay: 60

**注意:**将 crawler1crawler2 替换为爬网程序的 User-agent 名称。

现在,crawler2 被允许爬取您的域,但只能以每 60 毫秒一次的速度。

要阻止所有的爬网程序爬取您的 Web 内容,请使用通配符:

User-agent: *
Disallow: /

**注意:**很多搜索引擎使用爬网程序对页面生成索引,以用于搜索结果中。阻止所有爬网程序爬取您的网站会让您的页面更难被用户找到。

您可以定义规则来指定爬网程序可以爬取的目录或页面。例如,假设您想阻止爬网程序爬取目录 1目录 2,但目录 2 中的页面 example.html 除外:

User-agent: crawler
Disallow: /directory1/
Disallow: /directory2/
Allow: /directory2/example.html

注意:crawler 替换为爬网程序的 User-agent 名称。
目录 1
目录 2 替换为您的目录的名称。
example.html 替换为您的页面的名称。

2.将您的 robots.txt 文件添加到域中

robots.txt 文件添加到您的根域。例如,如果您的域为 example.com,则将文件添加到以下路径:

www.example.com/robots.txt

3.联系 AWS 滥用监督团队

恶意的爬网程序可能会忽略您的 robots.txt 文件。如果您认为在 AWS 资源上运行的爬网程序不遵守您的 robots.txt 文件,请提交滥用报告与完整的日志。这些日志必须包含爬取活动的日期、时间戳(包括时区)和源 IP 地址。请注意,AWS 信任与安全团队必须审查您的 robots.txt 文件,以确认所涉及客户的不合规行为。


相关信息

如何报告 AWS 资源滥用情况?

AWS 官方
AWS 官方已更新 4 年前