robots.txt
是一种用于与搜索引擎对话的协议文件,它告诉搜索引擎的爬虫(也称为蜘蛛或机器人)哪些页面或者文件是可以被抓取的,哪些是不可以被抓取的。这对于网站管理员来说非常重要,因为它可以帮助控制搜索引擎如何索引网站的内容。
robots.txt
文件的基本语法:
User-agent:
-
定义规则适用于哪个用户代理(即搜索引擎爬虫)。
plaintext*
表示所有已知的爬虫。User-agent: *
Disallow:
-
告诉爬虫不要访问指定的URL或目录。
plaintextDisallow: /example
上面这条规则意味着任何以
/example
开头的URL都不应该被访问。
Allow:
-
允许爬虫访问某个特定的URL或目录,即使它之前已经被
plaintextDisallow
指令排除在外。Disallow: /example Allow: /example/special
上述例子表示虽然
/example
被禁止访问,但/example/special
是允许访问的。
Sitemap:
-
指向网站地图文件的位置,帮助搜索引擎更快地找到网站地图。
plaintextSitemap: http://www.example.com/sitemap.xml
示例:
一个完整的robots.txt
文件可能看起来像这样:
User-agent: *
Disallow: /private/
Disallow: /temp/
Allow: /temp/public
Sitemap: http://www.example.com/sitemap.xml
在这个例子中,所有的搜索引擎爬虫都会被禁止访问/private/
目录下的所有内容以及/temp/
目录下的大部分内容,但是/temp/public
是被允许访问的。此外,还指定了一个网站地图的位置。
注意事项:
robots.txt
文件必须位于网站的根目录下。- 如果你想允许所有的爬虫访问所有内容,只需放置一个空的
robots.txt
文件即可。 robots.txt
文件不保证所有搜索引擎都会遵守其规则,但它通常会被大多数主要的搜索引擎遵守。- 不要依赖
robots.txt
来保护敏感信息,因为爬虫可能会忽略规则,而且即使不被搜索引擎索引,这些页面仍然可以通过直接访问URL的方式被看到。 - 如果一个目录或文件已经被搜索引擎索引了,那么即使之后你添加了
Disallow
规则,也需要一段时间才能从索引中移除这些条目。