使用 robots.txt 从搜索引擎中隐藏文件夹和子文件夹的正确语法

Proper syntax for hiding folders and subfolders from search engines with robots.txt

我的网站/pics 上有一个文件夹。 它有很多子文件夹。 每个子文件夹都包含文件。 我希望从搜索引擎中隐藏 /pics 及其子文件夹和子文件夹的文件。

我使用以下哪些词,或者它们是同义词:

Disallow: /pics
Disallow: /pics/
Disallow: /pics/*

如果它们不是同义词,它们之间的效果有什么区别?

它们不是同义词。

Disallow 值始终表示 URL 路径的开头。所以,Disallow: /pics/ 不会阻塞 https://example.com/picsDisallow: /pics 也会阻塞 https://example.com/picsandmore

Disallow: /pics/* 是一种特殊情况:在最初的 robots.txt 规范中,* 没有特殊含义,它是一个与其他任何字符一样的字符(因此它会阻止 URL 喜欢 https://example.com/pics/*foo)。但是许多搜索引擎扩展了 robots.txt 规范并将 * 解释为任何字符串(包括空字符串)的占位符。不过,这相当于 Disallow: /pics/,因此在这种情况下最好不要使用 * 变体。

如果您还想阻止 https://example.com/pics(没有尾部斜杠),则必须使用 Disallow: /pics。但请记住,它还会阻止路径以 /pics.

开头的任何其他 URL

如果没有https://example.com/pics,那么尾部总是有一个斜线,你可以使用更严格的Disallow: /pics/.

如果您想隐藏 pics 文件夹这一事实,您可以使用 Disallow: /pDisallow: /pi 等。但是,请再次记住它可能会阻止比你想要的更多。