robots文件的认知及了解robots文件的基本写法使用规则

摘要

robots文件一般在根目录下,每一条记录通过空行分开,在该文件中可以使用#进行注释,支持模糊匹配,该文件是区分大小写的但不严格,通常以一行或多行User-agent开始,后面加上若干Disallow和Allow。Disallow:该项的值用于描述不希望被访问的一组URL,这个值可以是一条完整的路径

robots文件一般在根目录下,每一条记录通过空行分开,在该文件中可以使用#进行注释,支持模糊匹配,该文件是区分大小写的但不严格,通常以一行或多行User-agent开始,后面加上若干Disallow和Allow。

Disallow:该项的值用于描述不希望被访问的一组URL,这个值可以是一条完整的路径,也可以是路径的非空前缀。Allow:该项的值用于描述希望被访问的一组URL,这个值可以是一条完整的路径,也可以是路径的前缀。

值得提醒的是每个搜索引擎都协议文件的解读不一样,比如百度是支持”*”和”$”来模糊匹配url的。”*”匹配0或多个任意字符,”$”匹配行结束符。最重要的是这个语法是从上到下生效的,切记。

常见的用法在网上可以找到,这里就这儿工具说几个不常见的,但是有用的东西,你们可以举一反三。

屏蔽所jpg或png图片被抓取:Disallow:/*.jpg$ 或者Disallow:/*.png$

禁止抓取所有动态页面:

User-agent:*

Disallow:/*?*

只允许抓取html网页:

Allow:/*.html$

User-agent:*

Disallow:/

禁止抓取后台所有文件同时隐藏后台真实目录:

#就这儿注释:比如你后台目录名是htdoadmin

Disallow:/*doad*

同时这个文件也支持放入网站地图地址:

#就这儿工具注释:一般放在整体结尾

Sitemap: http://XXX.com/sitemap.xml

最后面填个坑吧:上面说这个文件语法是从上到下生效,你或者不明白。就这儿在此举例说明:

#就这儿工具注释:仅允许 Baiduspider访问您的网站

User-agent: Baiduspider

Allow:/

User-agent:*

Disallow:/

前2行允许了百度爬行,那么第3-4行即使屏蔽了所有引擎包括百度,依然是允许百度爬行的。你明白了吗?再补充一个例子吧:

User-agent:*

Allow:/nihao/qincai

Disallow:/nihao/

这个写法将会阻止爬行:http://baidu.com/nihao/abc或者http://baidu.com/nihao/

但不会阻止爬行:http://baidu.com/nihao/qincai123或者http://baidu.com/nihao/qincai/123

文章结尾问你一个问题,你可以迅速回答出来吗?请问robots.txt里出现disallow是对的吗?

匿名

发表评论

匿名网友