前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >什么是Robots协议,标准写法是什么

什么是Robots协议,标准写法是什么

作者头像
沈唁
发布2018-05-24 16:04:40
1.4K0
发布2018-05-24 16:04:40
举报
文章被收录于专栏:沈唁志沈唁志

什么是 Robots 协议

Robots 是网站和搜引擎之间的一个协议。用来防止搜索引擎抓取那些我们不想被索引到的页面或内容。早期是为了防止搜索引擎抓取网站的一些隐私页面,不想公开展示的页面,Robots 的作用已经不在局限于网页的隐私了,如今已经是作为学习 SEO 的一个最基础的范畴,能够有效提高网站的健康度、纯净度,降低网站垃圾内容收录

User-agent:是定义搜索引擎的,指定搜索引擎的爬取程序,如果想定义所有搜索引擎请用 * , 记住他不能单独使用,他要配合前面两个语法使用(随便一个就行了) Disallow:是禁止搜索引擎抓取的路径。注意: / 表示根目录 (代表网站所有目录)。Disallow 禁止搜索引擎把我们的网页放出来,就是我们不允许搜索引擎收录,请记住是不允许搜索引擎收录,并不代表他不能爬取了。这是两个概念,他还是能爬的,他不是命令,他只是协议 Allow:是允许的意思,但需要注意:  他的使用一般都是结合 Disallow 他不能单独出现,意思是禁止爬取那个内容,加上 Allow 后意思是,除了可以爬取这个外其余的都禁止!

常见的搜索引擎蜘蛛

由于互联网上蜘蛛有进 200 多种搜索引擎蜘蛛,但你需要知道的几个常见的蜘蛛:

百度蜘蛛:Baiduspider 谷歌机器人:Googlebot 360 好搜: 360spider SOSO 蜘蛛:Sosospider 雅虎的蜘蛛 Mozilla 微软 bing 的蜘蛛:msnbot

Robots 协议的应用

应用 1: 屏蔽所有搜索引擎爬取网站的语法:

代码语言:javascript
复制
User-agent: *
Disallow: /

应用 2:允许所有搜索引擎爬取网站所有内容

代码语言:javascript
复制
User-agent: *
Disallow:

应用 3:只禁止百度抓取你网站的内容

代码语言:javascript
复制
User-agent: Baiduspider
Disallow: /

应用 4:只允许百度抓取你网站的内容

代码语言:javascript
复制
User-agent: Baiduspider
Disallow:
User-agent: *
disallow: /

语法的细节使用

冒号后面有空格,这是要严格遵守的,语法的第一个字母大写

语法的搭配使用

User-agent  放在第一,起到定义搜索引擎,意思就是之后的语法是针对 User-agent 定义所在的搜索引擎有效的文件夹的使用( 没有斜杠跟有斜杠他有什么区别)

知识点: / 单一的斜杠代表 根目录,辅助使用,就是具体的一个目录了

Disallow: /SEO/  与 Disallow: /SEO 的区别?

Disallow: /SEO/ 禁止搜索引擎抓取该网站的 SEO 目录 , /SEO/ 有斜杠的含义是代表蜘蛛不要来收录我们的 SEO 文件夹这个目录下面所以的页面

而 Disallow: /SEO 不带斜杠他代表的意义就多了,表示不但禁止搜索引擎抓取该网站的 SEO 目录,还能够禁止所有以 SEO 开头的目录名和文件名开头的网址

匹配符-通配符两个要点

—— $ 结束符  所有以他结尾的都能够进行匹配

—— *  匹配符  匹配零或任意多个字符

通配符是整个Robots.txt里面的核心内容,通配符出现让 Robots 代码更加精简,用更少的代码能够达到同样的效果,可以匹配要屏蔽的 N 个路径,(通配符匹配案例)

Allow 或 Disallow 的值

URL

匹配结果

/tmp

/tmp

yes

/tmp

/tmp.html

yes

/tmp

/tmp/a.html

yes

/tmp

/tmphoho

no

/Hello*

/Hello.html

yes

/He*lo

/Hello,lolo

yes

/Heap*lo

/Hello,lolo

no

html$

/tmpa.html

yes

/a.html$

/a.html

yes

htm$

/a.html

no

robots.txt 文件用法举例

例 1. 禁止所有搜索引擎访问网站的任何部分

User-agent: * Disallow: /

例 2. 允许所有的 robot 访问 (或者也可以建一个空文件 “/robots.txt”)

User-agent: * Allow: /

例 3. 仅禁止 Baiduspider 访问您的网站

User-agent: Baiduspider Disallow: /

例 4. 仅允许 Baiduspider 访问您的网站

User-agent: Baiduspider Allow: / User-agent: * Disallow: /

例 5. 仅允许 Baiduspider 以及 Googlebot 访问

User-agent: Baiduspider Allow: / User-agent: Googlebot Allow: / User-agent: * Disallow: /

例 6. 禁止 spider 访问特定目录  在这个例子中,该网站有三个目录对搜索引擎的访问做了限制,即 robot 不会访问这三个目录。需要注意的是对每一个目录必须分开声明,而不能写成 “Disallow: /cgi-bin/ /tmp/”。

User-agent: * Disallow: /cgi-bin/ Disallow: /tmp/ Disallow: /~joe/

例 7. 允许访问特定目录中的部分 url

User-agent: * Allow: /cgi-bin/see Allow: /tmp/hi Allow: /~joe/look Disallow: /cgi-bin/ Disallow: /tmp/ Disallow: /~joe/

例 8. 使用”*”限制访问 url 禁止访问/cgi-bin/目录下的所有以”.htm”为后缀的 URL(包含子目录)。

User-agent: * Disallow: /cgi-bin/*.htm

例 9. 使用”$”限制访问 url 仅允许访问以”.htm”为后缀的 URL。

User-agent: * Allow: /*.htm$ Disallow: /

例 10. 禁止访问网站中所有的动态页面

User-agent: * Disallow: /*?*

例 11. 禁止 Baiduspider 抓取网站上所有图片 仅允许抓取网页,禁止抓取任何图片。

User-agent: Baiduspider Disallow: /*.jpg$ Disallow: /*.jpeg$ Disallow: /*.gif$ Disallow: /*.png$ Disallow: /*.bmp$

例 12. 仅允许 Baiduspider 抓取网页和.gif 格式图片 允许抓取网页和 gif 格式图片,不允许抓取其他格式图片

User-agent: Baiduspider Allow: /*.gif$ Disallow: /*.jpg$ Disallow: /*.jpeg$ Disallow: /*.png$ Disallow: /*.bmp$

例 13. 仅禁止 Baiduspider 抓取.jpg 格式图片

User-agent: Baiduspider Disallow: /*.jpg$

沈唁志|一个PHPer的成长之路! 原创文章采用CC BY-NC-SA 4.0协议进行许可,转载请注明:转载自:什么是Robots协议,标准写法是什么

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-11-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是 Robots 协议
  • 常见的搜索引擎蜘蛛
  • Robots 协议的应用
  • 语法的细节使用
  • 语法的搭配使用
  • 匹配符-通配符两个要点
  • robots.txt 文件用法举例
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档