在robot.txt中阻止访问

时间:2013-08-27 23:23:46

标签: robots.txt

如果我想阻止访问我服务器中的所有.py文件但允许与此.py文件位于同一文件夹中的所有文件,我应该在robot.txt中添加什么?这就是我现在的权利:

User-Agent: *    
Disallow: /*_.py

2 个答案:

答案 0 :(得分:2)

robots.txt文件没有“已定义的标准”,但http://www.robotstxt.org/上汇总了大量信息。

http://www.robotstxt.org/robotstxt.html上,声明:

  

具体来说,你不能拥有像“User-agent:* bot *”,“Disallow:/ tmp / *”或“Disallow:* .gif”这样的行。

虽然一些抓取工具 允许使用通配符,但如果您想拥有一个可靠的解决方案,那么您最安全的选择就是假设没有抓取工具会占用您的Disallow:考虑到这一点,并建议您找到替代解决方案。否则,您将实施一个解决方案,该解决方案将得到一些搜索引擎的支持,同时让您的网站对其他人开放。

答案 1 :(得分:1)

根据this pagethis one,特定抓取工具/漫游器(例如Googlebot和MSNBot)支持在“Disallow:”行中使用星号(*)。

例如,如果您想从.py文件中阻止Googlebot,请使用:

User-agent: Googlebot
Disallow: /*.py$

美元符号($)表示文件名的结尾(包括其扩展名)。请注意,Googlebot-Image和MSNBot也遵循此语法。但是,由于我无法找到有关其他抓取工具支持此功能的信息,因此您可能需要指定本文中提到的“用户代理”的语法。

当然,从长远来看,寻找通用解决方案会更好,但这可能是一个快速解决方案。