我用过
Disallow: /*?
robots.txt文件中的禁止所有可能包含“?”的网页在网址中。
这种语法是否正确,还是我也阻止了其他页面?
答案 0 :(得分:4)
这取决于机器人。
遵循原始robots.txt规范的机器人不会给*
任何特殊含义。这些机器人会阻止其路径以/*
开头的所有网址,后面跟?
,例如http://example.com/*?foo
。
某些机器人(包括Googlebot)会赋予*
字符特殊含义。它通常代表任何字符序列。这些机器人会阻止您的意图:任何带有?
的网址。
Google’s robots.txt documentation包括以下情况:
阻止访问包含问号(
?
)的所有网址。例如,示例代码会阻止以您的域名开头的网址,后跟任意字符串,后跟一个问号,以任何字符串结尾:User-agent: Googlebot Disallow: /*?