robots 小记

时间:2023-12-18 21:26:20

简介

  网站所有者使用/robots.txt文件向网站机器人提供有关其网站的说明;这称为 Robots Exclusion Protocol.它的工作原理是这样的:robot 想要访问一个网站URL,比如http://www.example.com/welcome.html。在此之前,它首先检查http://www.example.com/robots.txt,并找到:

  

 User-agent: *
Disallow: /
  “User-agent:*”表示此部分适用于所有 robot 。 “Disallow:/”告诉robot 它不应该访问网站上的任何页面。
    
  使用 robots.txt 时有两个重要注意事项:
  1. robot 可以忽略您的 robots.txt。特别是扫描网络的安全漏洞的恶意robot,以及垃圾邮件发送者使用的电子邮件地址收集器将不会引起注意。   
  2. robots.txt文件是一个公开可用的文件。任何人都可以查看您不希望robots 使用的服务器部分。

如何创建 robots.txt文件:

  在哪里放:

    简单的来说:在您的Web服务器的*目录中。详细来解释:当 robots 寻找URL的“robots.txt”文件时,它会从URL中删除路径组件(从第一个单斜杠开始),并在其位置放置“robots.txt”。例如,对于“http://www.example.com/shop/index.html”,它将删除“/shop/index.html”,并将其替换为“/robots.txt”,最后将“http://www.example.com/robots.txt”。

  如何写:

    “robots.txt”文件是一个文本文件,具有一个或多个记录。通常包含单个记录,看起来像这样:

    

User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /~joe/
    在此示例中,排除了三个目录。
    注意,您需要为要排除的每个网址前缀单独留出一个“Disallow” - 您不能在一行上说“Disallow:/ cgi-bin / / tmp /”。此外,记录中不能有空行,因为它们用于定界多个记录。并且在这里是不支持正则表达式的。

  下面是一些例子:

    从整个服务器中排除所有robot
    
User-agent: *
Disallow: /

    允许所有漫游器完成访问

User-agent: *
Disallow:
    排除单个机器人
User-agent: BadBot
Disallow: /

    允许单个机器人

User-agent: Google
Disallow: User-agent: *
Disallow: /

    排除除一个文件外的所有文件。这是一个有点尴尬,因为没有“允许”字段。简单的方法是将所有不允许的文件放入一个单独的目录,比如“stuff”,然后将该文件放在该目录的上面:  

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

或者,您也可以明确禁止所有禁止的网页:

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