如何创建robots.txt文件

・4 分钟阅读

站长使用/robots.txt文件向网络机器人提供他们的站点说明; 这叫做 机器人的排除协议。

它像这样工作:一个机器人想要访问网站的网址http://www.example.com/welcome.html.之前,先检查http://www.example.com/robots.txt,并且查找:


User-agent: *
Disallow: /


" USER-AGENT :* "表示此部分适用于所有机器人," Disallow :/ 告诉机器人它不应该访问网站上的任何网页。

使用/robots. txt时,有两个重要的注意事项:

  • 机器人可以忽略你的/robots.txt,特别是恶意机器人在扫描网络安全漏洞,
  • /robots.txt文件是公开可用的文件,谁都可以看到你的服务器不希望机器人使用的内容,

所以,不要试图用/robots.txt来隐藏信息。

如何创建/robots.txt文件

把它放在哪里

简短回答:在web服务器的顶级目录中。

更长的答案:

当机器人查找URL的"/"" 文件时,它将路径组件从URL (从第一个斜线开始的一切)中划分出来。

例如" http://www.example.com/shop/index.html ,它将删除" /shop/index.html ,并将其替换为" /robots.txt ,并且最终会得到"http://www.example.com/robots.txt"

因此,作为网站所有者,你需要将它放在web服务器的正确位置,以便使得URL工作,通常就是你把网站主页放在" index.html "欢迎页面,确切地说,如何将文件放在那里,取决于您的Web服务器软件。

请记住使用所有小写的文件名: " robots.txt ,不是" Robots.txt

放什么?

"/robots file文件是一个文本文件,带有一个或多个记录,通常包含一个类似这样的记录:


User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /~joe/


在本示例中,排除了三个目录。

请注意,你需要为每个要排除的URL前缀单独的"Disallow "行,不能写成"Disallow : "/cgi-bin//tmp/"在一行上,此外,您可能没有记录中的空行,因为它们用于分隔多个记录。

具体来说,你的USER-AGENT不能有像这样的行: *bot*",":/tmp/*"或": *.gif".

要排除的内容取决于服务器,下面是一些示例:

从整个服务器中排除所有机器人

User-agent: *
Disallow: /



让所有机器人完全进入

User-agent: *
Disallow:


(或者创建一个空的"/robots.txt "文件,或者根本不使用),

从服务器部分排除所有机器人

User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /junk/


排除单个机器人

User-agent: BadBot
Disallow: /


允许单个机器人

User-agent: Google
Disallow:

User-agent: *
Disallow: /


排除除一个以外的所有文件

目前,这有点笨拙,因为没有"允许"字段,简单的方法是将所有文件放入一个单独的目录,并保留一个文件,


User-agent: *
Disallow: /~joe/stuff/


或者,你可以显式禁止所有不允许的页面:


User-agent: *
Disallow: /~joe/junk.html
Disallow: /~joe/foo.html
Disallow: /~joe/bar.html

190929089 profile image