快速Robots.txt的问题

以下robots.txt语法是否能正确阻止以“_.php”结尾的网站上的所有页面? 我不想意外阻止其他页面。

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

另外,我允许在同一robots.txt文件中同时具有“允许:/”和“禁止:”命令吗? 谢谢!

如果你想排除某些文件(但不是其他文件),你必须将它们分组到目录中,例如:

 用户代理: *
不允许:/ cgi-bin / 

根据robotstxt.org ,“禁止”字段不支持星号:

还请注意,在用户代理或Disallow行中不支持通配符和正则expression式。 用户代理字段中的“*”是一个特殊的值,意思是“任何机器人”。 具体而言,您不能拥有“User-agent: bot ”,“Disallow:/ tmp / *”或“Disallow:* .gif”之类的行。

另外,不存在“允许”字段。 一切都是默认允许的,特定的项目是不允许例外的。

参考文献:

迈尔斯的答案涵盖了标准。 最着名的抓取工具Googlebot扩展了标准,并理解了允许以及(有限)的模式匹配。

我发现Google的网站pipe理员工具非常有帮助。 他们有一个完整的工具,只是帮助你build立一个正确的robots.txt 。 但是,在运行“robots.txttesting”之前,您需要先上传页面(或至less存根testing页面)。