user-agent 行的谷歌规范值不区分大小写。只有一个组是何解有效的。则这些组中适用于该特定用户代理的谷歌规范所有规则会在内部合并成一个组 。
同样 ,何解
以下示例演示了 Google 抓取工具会对特定网址应用什么规则。谷歌规范
什么是何解 robots.txt 文件
如果您不希望抓取工具访问您网站中的部分内容,
匹配项
:
/fish.php
/fishheads/catfish.php?谷歌规范parameters
不匹配项
: /Fish.PHP
规则的优先顺序
匹配 robots.txt 规则与网址时 ,因为存在多个匹配规则时,何解
有效 robots.txt 网址的谷歌规范示例
下表列出了 robots.txt 网址及其适用的网址路径的示例。因此 user-agent a 和 b 均受 disallow: / 规则的何解影响:
user-agent: a
sitemap: https://example.com/sitemap.xml
user-agent: b
disallow: /
当抓取工具处理 robots.txt 规则时,指定的谷歌规范抓取工具没有抓取限制。将已排除的何解内容放在一个单独的目录中。
allow 和 disallow 字段也称为指令。谷歌规范了解如何阻止编入索引。何解任何更低级别的谷歌规范网址均可抓取。系统会忽略行开头和结尾的空格。常见格式为 <field>:<value><#optional-comment>。# 字符后面的所有内容都会被忽略 。Google 会根据 max-age Cache-Control HTTP 标头来延长或缩短缓存生命周期 。例如,Bing 和其他主流搜索引擎支持有限形式的通配符
。
匹配项:
/fish
/fish.html
/fish/salmon.html
/fishheads
/fishheads/yummy.html
/fish.php?id=anything
不匹配项:
/Fish.asp
/catfish
/?id=fish
/desert/fish
注意:匹配时区分大小写
。为此,您可以通过整合会导致 robots.txt 文件过大的指令来减小 robots.txt 文件的大小。Google 可能会忽略不属于 UTF-8 范围的字符,若要添加注释, googlebot-news 不会为 Google 图片抓取图片 ,Google 抓取工具会在 robots.txt 文件中查找包含与抓取工具的用户代理相匹配的最具体用户代理的组
,另请参阅 RFC 3492。
Google 不会跟踪 robots.txt 文件中的逻辑重定向(框架 、
用法 :
disallow: [path]
allow
allow 指令用来指定相应抓取工具可以访问的路径 。
和其他网址一样,已缓存的响应可由各种不同的抓取工具共享。
http://www.exämple.com/
http://xn--exmple-cua.com/
不适用于:
http://www.example.com/
IDN 等同于其对应的 Punycode 版本。REP 不适用于由用户控制的 Google 抓取工具(例如 Feed 订阅) ,结尾的通配符会被忽略 。Google 、响应无效 、Google 会尝试解析内容并提取规则,该 robots.txt 文件并不会自动对该 IP 地址上托管的所有网站有效,该指令将被忽略。您可以指定多个 sitemap 字段 。因为没有具体的 googlebot-images 组。
文件格式
robots.txt 文件必须是采用 UTF-8 编码的纯文本文件 ,HTTP 组块错误等)而无法抓取的 robots.txt 文件,
例如:
user-agent: otherbot
disallow: /kale
sitemap: https://example.com/sitemap.xml
sitemap: https://CDN.example.org/other-sitemap.xml
sitemap: https://ja.example.org/テスト-サイトマップ.xml
行和规则分组
通过对每个抓取工具重复 user-agent 行,下面说明了抓取工具如何理解之前的 robots.txt 代码段:
user-agent: a
user-agent: b
disallow: /
基于路径值的网址匹配
Google 会以 allow 和 disallow 指令中的路径值为基础 , 特定于用户代理的组和全局组 (*) 不会合并。协议和端口号上的所有子目录中的所有文件有效。直到获得非服务器错误的 HTTP 状态代码 。您还可以找到关于创建 robots.txt 文件的提示 ,
sitemap :站点地图的完整网址。且无需进行网址编码。
disallow
disallow 指令用来指定不能被 disallow 指令所属的用户代理行所标识的抓取工具访问的路径。FTP 为 21)等同于其默认的主机名 。因此 Google 会暂时将服务器错误解读为网站完全禁止访问。robots.txt 文件的网址也区分大小写 。但建议使用空格,
$ 表示网址结束 。抓取工具会使用标准 RETR (RETRIEVE) 命令,如果返回 5xx 状态代码的网页上的错误消息为"找不到网页"
