当前位置:首页 > SEO教程 > SEO杂谈

是什么robots.txt协议?robots文件的如何写?

是什么robots.txt协议?robots文件的如何写?robots.txt是你对搜索引擎制定的一个如何索引你的网站的规则。通过该文件,搜索引擎就可以知道在你的网站中哪些文件是可以被索引的,哪些文件是被拒绝索引的,我们就可以很方便地控制搜索索引网站内容了。

第一:什么是robots.txt?

这是一个文本文件,是搜索引擎爬行网页要查看的第一个文件,你可以告诉搜索引擎哪些文件可以被查看,哪些禁止。当搜索机器人(也叫搜索蜘蛛)访问一个站点时,它首先会检查根目录是否存在robots.txt,如果有就确定抓取范围,没有就按链接顺序抓取。

第二:robots.txt有什么用

为何需要用robots.txt这个文件来告诉搜索机器人不要爬行我们的部分网页,比如:后台管理文件、程序脚本、附件、数据库文件、编码文件、样式表文件、模板文件、导航图片和背景图片等等。说到底了,这些页面或文件被搜索引擎收录了,用户也看不了,多数需要口令才能进入或是数据文件。既然这样,又让搜索机器人爬行的话,就浪费了服务器资源,增加了服务器的压力,因此我们可以用robots.txt告诉机器人集中注意力去收录我们的文章页面。增强用户体验。

1,用robots屏蔽网站重复页

很多网站一个内容提供多种浏览版本,虽然很方便用户却对蜘蛛造成了困难,因为它分不清那个是主,那个是次,一旦让它认为你在恶意重复,你就惨了

user-agent: *

disallow: /sitemap/ (禁止蜘蛛抓取 文本网页)

2,用robots保护网站安全

很多人纳闷了,robots怎么还和网站安全有关系了?其实关系还很大,不少低级黑客就是通过搜索默认后台登陆,以达到入侵网站的目标

user-agent: *

disallow: /admin/ (禁止蜘蛛抓取admin目录下所有文件)

3,防止盗链

一般盗链也就几个人,可是一旦被搜索引擎“盗链”那家伙你100m宽带也吃不消,如果你做的不是图片网站,又不想被搜索引擎“盗链”你的网站图片

user-agent: *

disallow: .jpg$

4,提交网站地图

现在做优化的都知道做网站地图了,可是却没几个会提交的,绝大多数人是干脆在网页上加个链接,其实robots是支持这个功能的

sitemap: http://bbs.moonseo.cn/sitemaps/sitemaps_1.xml

5,禁止某二级域名的抓取

一些网站会对vip会员提供一些特殊服务,却又不想这个服务被搜索引擎检索到

user-agent: *

disallow: /

以上五招robots足以让你对搜索引擎蜘蛛掌控能力提升不少,就像百度说的:我们和搜索引擎应该是朋友,增加一些沟通,才能消除一些隔膜。

第三:robots.txt基本语法

1、robots.txt的关键语法

a.user-agent: 应用下文规则的漫游器,比如googlebot,baiduspider等。

b.disallow: 要拦截的网址,不允许机器人访问。

c.allow: 允许访问的网址

d.“*” : 通配符—匹配0或多个任意字符。

e.“$” : 匹配行结束符。

f.“#” : 注释—说明性的文字,不写也可。

g.googlebot: 谷歌搜索机器人(也叫搜索蜘蛛)。

h.baiduspider: 百度搜索机器人(也叫搜索蜘蛛)。

i.目录、网址的写法:都以以正斜线 (/) 开头。

disallow:/

disallow:/images/

disallow:/admin/

disallow:/css/

2、robots.txt的具体用法

a.允许所有的robot访问

user-agent: *

disallow:

或者

user-agent: *

allow: /

或者建一个空文件”robots.txt”即可。

b.仅禁止某个机器人访问您的网站,如baiduspider。

user-agent: baiduspider

disallow: /

c.仅允许某个机器人访问您的网站,如baiduspider。

user-agent: baiduspider

disallow:

user-agent: *

disallow: /

d.禁止访问特定目录

user-agent: *

disallow: /admin/

disallow: /css/

disallow:

要拦截对所有包含问号 (?) 的网址的访问(具体地说,这种网址以你的域名开头、后接任意字符串,然后接问号,而后又接任意字符串),使用以下内容:

user-agent: googlebot

disallow: /*?

要指定与某个网址的结尾字符相匹配,就用 $。例如,要拦截以 .xls 结尾的所有网址,就用以下内容:

user-agent: googlebot

disallow: /*.xls$

你可以将此模式匹配与 allow 指令配合使用。例如,如果 ? 代表一个会话 id,那么你可能希望排除包含 ? 的所有网址,以确保 googlebot 不会抓取重复网页。但是以 ? 结尾的网址可能是你希望包含

在内的网页的版本。在此情况下,你可以对你的 robots.txt 文件进行如下设置:

user-agent: *

allow: /*?$

disallow: /*?

disallow: /*? 指令会阻止包含 ? 的所有网址(具体地说,它将拦截所有以您的域名开头、后接任意字符串,然后接问号,而后又接任意字符串的网址)。

allow: /*?$ 指令将允许以 ? 结尾的任何网址(具体地说,它将允许所有以您的域名开头、后接任意字符串,然后接 ?,? 之后不接任何字符的网址)。

一般网站查看robots.txt文件的方法是主页后面加robots.txt就可以,比如淘宝网的就是http://www.taobao.com/robots.txt。请注意,仅当你的网站包含不希望被搜索引擎收录的内容时,才需要使用robots.txt文件。如果你希望搜索引擎收录网站上所有内容,就不要建立robots.txt文件。

推荐阅读:

如何书写正确网站的robots.txt文件

了解robots文件,主动告诉搜索引擎该抓取什么内容


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!

相关教程推荐

其他课程推荐