什么是robots呢?这是一个文本文件,是搜索引擎爬行网页要查看的第一个文件,你可以告诉搜索引擎哪些文件可以被查看哪些禁止,当搜索机器人(也叫搜索蜘蛛)访问一个站点时,它首先会检查根目录是否存在robots.txt,如果有就确定抓取范围,没有就按链接顺序抓取。
为何需要用robots.txt这个文件来告诉搜索机器人不要爬行我们的部分网页,比如后台管理文件、程序脚本、附件、数据库文件、编码文件、样式表文件、模板文件、导航图片和背景图片等等。这些页面或文件被搜索引擎收录了,用户也看不了,多数需要口令才能进入或是数据文件。既然这样还让搜索机器人爬行的话,就浪费了服务器资源,增加了服务器的压力,因此我们可以用robots.txt告诉机器人集中注意力去收录我们的文章页面增强用户体验。

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 具体用法:
1、允许所有的robot访问
User-agent: *
Disallow:
或者
User-agent: *
Allow: /
或者建一个空文件”robots.txt”即可。
2、仅禁止某个机器人访问您的网站,如Baiduspider。
User-agent: Baiduspider
Disallow: /
3、仅允许某个机器人访问您的网站,如Baiduspider。
User-agent: Baiduspider
Disallow:
User-agent: *
Disallow: /
4、禁止访问特定目录
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的问题其实还与程序有一定的关系,有些程序可能会产生一些比较不一样的链接,如果我们不需要的话可以对其进行屏蔽,都是可以通过robots来完成的。