robots.txt 是一个文本文件,放置在网站的根目录下。它就像一份说明书,告诉搜索引擎的爬虫(也叫机器人)哪些页面可以访问,哪些页面不能访问。简单来说,它就是用来控制搜索引擎如何抓取和索引你网站内容的。
通常可以通过输入主页的完整 URL,然后添加 /robots.txt 来查看任何给定网站的 robots.txt 文件,例如 https://www.cloudflare.com/robots.txt。该文件未链接到网站上的任何其他位置,因此用户不太可能会偶然发现该文件,但是大多数网页爬网程序机器人都会在抓取该网站的其余部分之前先查找该文件。
虽然robots.txt文件提供了有关机器人的规范,但实际上并不能执行这些规范。良性的机器人(例如网页爬网程序或新闻提要机器人)将先尝试访问robots.txt文件,然后再查看域中的任何其他页面,并将按照说明进行操作。恶意的机器人忽略robots.txt文件或对其进行处理,以查找被禁止的网页。
网页爬网程序机器人将遵循robots.txt文件中最具体的指示集。如果文件中有矛盾的命令,则机器人将遵循更细化的命令。
要注意的一件事是,所有子域都需要有自己的robots.txt文件[1]。
一个典型的 robots.txt 文件包含以下几部分:
示例:
User-agent: Googlebot
Disallow: /admin/
Allow: /images/
Sitemap: https://www.example.com/sitemap.xml
这段代码表示:
禁止搜索引擎访问整个网站:
User-agent: *
Disallow: /
注意:这会阻止所有搜索引擎访问你的网站。
允许部分搜索引擎访问:
User-agent: Googlebot
Allow: /
User-agent: Bingbot
Disallow: /
只允许 Googlebot 访问,禁止 Bingbot 访问。
禁止访问特定目录或文件:
User-agent: *
Disallow: /private/
Disallow: /old/index.html
禁止访问 private 目录和 old/index.html 文件。
使用通配符:
User-agent: *
Disallow: /*.php
禁止访问所有 .php 文件。
常见搜索引擎的爬虫代号:
搜索引擎的爬虫(蜘蛛)通常有特定的代号,用于在访问网站时被服务器识别。以下是一些主流和知名的搜索引擎爬虫代号: