Seo 使用';允许';在robots.txt中

Seo 使用';允许';在robots.txt中,seo,web-crawler,robots.txt,googlebot,Seo,Web Crawler,Robots.txt,Googlebot,最近我看到一个网站的robots.txt,如下所示: User-agent: * Allow: /login Allow: /register 我只能找到允许条目,没有禁止条目 从中,我可以理解robots.txt几乎是一个黑名单文件,不允许对页面进行爬网。因此,Allow仅用于允许已被Disallow阻止的域的子部分。与此类似: Allow: /crawlthis Disallow: / 但是,robots.txt没有禁止条目。那么,这个robots.txt是否允许谷歌抓取所有页面?或者,

最近我看到一个网站的robots.txt,如下所示:

User-agent: *
Allow: /login
Allow: /register
我只能找到
允许
条目,没有
禁止
条目

从中,我可以理解robots.txt几乎是一个黑名单文件,不允许对页面进行爬网。因此,
Allow
仅用于允许已被
Disallow
阻止的域的子部分。与此类似:

Allow: /crawlthis
Disallow: /

但是,robots.txt没有
禁止
条目。那么,这个robots.txt是否允许谷歌抓取所有页面?或者,它是否只允许使用
allow
标记的指定页面?

您是对的,这个robots.txt文件允许谷歌抓取网站上的所有页面。可在此处找到详细的指南:

如果您希望只允许googleBot对指定页面进行爬网,则正确的格式为:

User Agent:*
Disallow:/
Allow: /login
Allow: /register
(我通常不允许这些特定页面,因为它们对搜索者没有太大价值。)


需要注意的是,Allow命令行仅适用于某些机器人(包括Googlebot)

Allow
行但没有
Disallow
行的robots.txt记录是没有意义的。默认情况下,无论如何都允许对所有内容进行爬网

根据(未定义
Allow
),它甚至无效,因为至少需要一行
Disallow
(粗体强调):

记录以一个或多个
用户代理
行开始,然后是一个或多个
禁止
行[…]

记录中至少需要存在一个
禁止
字段


换句话说,像这样的记录

User-agent: *
Allow: /login
Allow: /register
相当于记录

User-agent: *
Disallow:

i、 例如,允许对所有内容进行爬网,包括(但不限于)路径以
/login
/register

开头的URL(官方标准仅提及“用户代理”和“禁止”。*”和“$”在禁止指令中也没有正式的特殊含义。)