排除特定文件夹被抓取?

时间:2014-01-20 15:52:11

标签: html web-crawler backend robots.txt google-search

我想排除我的用户文件夹被搜索蜘蛛抓取。

结构如下。用户帐户在

www.mydomain.com/username

问题是我无法在robots.txt的不允许部分中排除“/”,因为还有其他文件夹,例如

 www.mydomain.com/legal
 www.mydomain.com/privacy

用户还可以生成应该可抓取的项目。他们在

之下
 www.mydomain.com/username/items/itemId

如何为该方案设置机器人txt?

2 个答案:

答案 0 :(得分:1)

检查以下已回答的问题,也许它可以解决您的问题:

Robots.txt Disallow Certain Folder Names

希望这有帮助。

修改

请参阅以下已回答的问题,以便排除文件夹但不包括其子文件

Robots.txt Allow sub folder but not the parent

你也应该考虑使用如下结构:

mydomain.com/users/user1/subfolder
mydomain.com/users/user2/subfolder

为了更准确地定位您的规则。

答案 1 :(得分:1)

如果可能,您应该遵循taxicala的建议来更改您的目录结构。

如果绝对无法更改目录结构,可以使用allow指令和通配符来处理这两个问题:

User-agent: *
Allow: /legal$
Allow: /privacy$
Allow: /*/items/
Disallow: /

请注意,并非所有机器人都支持此语法。这肯定适用于所有主要搜索引擎,但它可能不适用于一些较旧的机器人。此外,这不是特别面向未来的。如果您稍后添加了一些新的顶级页面而忘记将它们添加到robots.txt文件中,则会以静默方式阻止它们。理想的方法是使用一个目录结构,将你想要阻止的东西与你不能阻挡的东西隔离开来。

相关问题