robots.txt 中路径的开头是否足够?
Is the beginning of a path enough in robots.txt?
我的服务器上有以下文件:
/file
/file.html
/file/bob.html
我想将它们全部排除在索引之外。下面的robots.txt够吗?
User-Agent: *
Disallow: /file
甚至只是:
User-Agent: *
Disallow: /f
注:
我知道 Google 的机器人会接受 /file
禁止它们来自所有提到的文件(参见 https://developers.google.com/webmasters/control-crawl-index/docs/robots_txt),但我不想只解决 Google 但是所有行为良好的机器人,所以我的问题是关于原始标准,而不是后来的扩展。
简而言之,是的。
如果你有:
User-agent: *
Disallow: /abc
它将阻止 任何以 /abc 开头的内容,包括:
/abc
/abc.html
/abc/def/ghi
/abcdefghi
/abc?x=123
这是原始 robots.txt 标准的一部分,它适用于所有遵守 robots.txt 的机器人。
关于 robots.txt 需要记住的一点是,它故意不那么复杂。它被设计为简单易用,便于爬虫实施。除非您使用扩展名(如通配符),否则它只是一个简单的字符串比较。该指令将匹配任何以您提供的字符序列开头的 URL。
我的服务器上有以下文件:
/file
/file.html
/file/bob.html
我想将它们全部排除在索引之外。下面的robots.txt够吗?
User-Agent: *
Disallow: /file
甚至只是:
User-Agent: *
Disallow: /f
注:
我知道 Google 的机器人会接受 /file
禁止它们来自所有提到的文件(参见 https://developers.google.com/webmasters/control-crawl-index/docs/robots_txt),但我不想只解决 Google 但是所有行为良好的机器人,所以我的问题是关于原始标准,而不是后来的扩展。
简而言之,是的。
如果你有:
User-agent: *
Disallow: /abc
它将阻止 任何以 /abc 开头的内容,包括:
/abc
/abc.html
/abc/def/ghi
/abcdefghi
/abc?x=123
这是原始 robots.txt 标准的一部分,它适用于所有遵守 robots.txt 的机器人。
关于 robots.txt 需要记住的一点是,它故意不那么复杂。它被设计为简单易用,便于爬虫实施。除非您使用扩展名(如通配符),否则它只是一个简单的字符串比较。该指令将匹配任何以您提供的字符序列开头的 URL。