2020年2月21日10:03
0
416
什么是robots文件?
Robots.txt
- 1. robots.txt可以告诉搜索引擎您网站的哪些页面可以被抓取,哪些页面不可以被抓取。
- 2. 您可以通过Robots工具来创建、校验、更新您的robots.txt文件,或查看您网站robots.txt文件在百度生效的情况。
- 3. Robots工具目前支持48k的文件内容检测,请保证您的robots.txt文件不要过大,目录最长不超过250个字符。
Robots.txt文件格式
robots文件往往放置于根目录下,包含一条或更多的记录,这些记录通过空行分开(以CR,CR/NL, or NL作为结束符),每一条记录的格式如下所示:
"<field>:<optional space><value><optionalspace>"
在该文件中可以使用#进行注解,具体使用方法和UNIX中的惯例一样。该文件中的记录通常以一行或多行User-agent开始,后面加上若干Disallow和Allow行,详细情况如下:
User-agent:该项的值用于描述搜索引擎robot的名字。在"robots.txt"文件中,如果有多条User-agent记录说明有多个robot会受到"robots.txt"的限制,对该文件来说,至少要有一条User-agent记录。如果该项的值设为*,则对任何robot均有效,在"robots.txt"文件中,"User-agent:*"这样的记录只能有一条。如果在"robots.txt"文件中,加入"User-agent:SomeBot"和若干Disallow、Allow行,那么名为"SomeBot"只受到"User-agent:SomeBot"后面的 Disallow和Allow行的限制。
Disallow:该项的值用于描述不希望被访问的一组URL,这个值可以是一条完整的路径,也可以是路径的非空前缀,以Disallow项的值开头的URL不会被 robot访问。例如"Disallow:/help"禁止robot访问/help.html、/helpabc.html、/help/index.html,而"Disallow:/help/"则允许robot访问/help.html、/helpabc.html,不能访问/help/index.html。"Disallow:"说明允许robot访问该网站的所有url,在"/robots.txt"文件中,至少要有一条Disallow记录。如果"/robots.txt"不存在或者为空文件,则对于所有的搜索引擎robot,该网站都是开放的。
Allow:该项的值用于描述希望被访问的一组URL,与Disallow项相似,这个值可以是一条完整的路径,也可以是路径的前缀,以Allow项的值开头的URL 是允许robot访问的。例如"Allow:/hibaidu"允许robot访问/hibaidu.htm、/hibaiducom.html、/hibaidu/com.html。一个网站的所有URL默认是Allow的,所以Allow通常与Disallow搭配使用,实现允许访问一部分网页同时禁止访问其它所有URL的功能。
使用"*"and"$":Baiduspider支持使用通配符"*"和"$"来模糊匹配url。
"*" 匹配0或多个任意字符
"$" 匹配行结束符。
robots.txt用法举例
例1. 禁止所有搜索引擎访问网站的任何部分
下载该robots.txt文件
User-agent: *
Disallow: /
例2. 允许所有的robot访问
(或者也可以建一个空文件 "/robots.txt")
User-agent: *
Disallow:
或者
User-agent: *
Allow: /
例3. 仅禁止Baiduspider访问您的网站
User-agent: Baiduspider
Disallow: /
例4. 仅允许Baiduspider访问您的网站
User-agent: Baiduspider
Disallow:
User-agent: *
Disallow: /
例5. 禁止spider访问特定目录
在这个例子中,该网站有三个目录对搜索引擎的访问做了限制,即robot不会访问这三个目录。需要注意的是对每一个目录必须分开声明,而不能写成 "Disallow: /cgi-bin/ /tmp/"。
User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /~joe/
例6. 允许访问特定目录中的部分url
User-agent: *
Allow: /cgi-bin/see
Allow: /tmp/hi
Allow: /~joe/look
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /~joe/
例7. 使用"*"限制访问url
禁止访问/cgi-bin/目录下的所有以".htm"为后缀的URL(包含子目录)。
User-agent: *
Disallow: /cgi-bin/*.htm
例8. 使用"$"限制访问url
仅允许访问以".htm"为后缀的URL。
User-agent: *
Allow: .htm$
Disallow: /
例9. 禁止访问网站中所有的动态页面
User-agent: *
Disallow: /*?*
例10. 禁止Baiduspider抓取网站上所有图片
仅允许抓取网页,禁止抓取任何图片。
User-agent: Baiduspider
Disallow: .jpg$
Disallow: .jpeg$
Disallow: .gif$
Disallow: .png$
Disallow: .bmp$
例11. 仅允许Baiduspider抓取网页和.gif格式图片
允许抓取网页和gif格式图片,不允许抓取其他格式图片
User-agent: Baiduspider
Allow: .gif$
Disallow: .jpg$
Disallow: .jpeg$
Disallow: .png$
Disallow: .bmp$
例12. 仅禁止Baiduspider抓取.jpg格式图片
User-agent: Baiduspider
Disallow: .jpg$
网站误封Robots该如何处理
1.修改Robots封禁为允许,然后到百度站长后台检测并更新Robots。
2.在百度站长后台抓取检测,此时显示抓取失败,没关系,多点击抓取几次,触发蜘蛛抓取站点。
3.在百度站长后台抓取频次,申请抓取频次上调。
4.百度反馈中心,反馈是因为误操作导致了这种情况的发生。
5.百度站长后台链接提交处,设置数据主动推送(实时)。
6.更新sitemap网站地图,重新提交百度,每天手工提交一次。
- 1
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 22
- 23
- 24
- 25
- 26
- 27
- 20
继续阅读