巴中热线

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2855|回复: 0

[网页教程] 什么是robots.txt作用和写法

[复制链接]
发表于 2016-5-16 16:50:07 | 显示全部楼层 |阅读模式

注册巴中热线论坛,交好友享优惠,衣食住行吃喝玩乐尽在 BZHOT.com

您需要 登录 才可以下载或查看,没有帐号?立即注册

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

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

1、用robots屏蔽网站重复页
很多网站一个内容提供多种浏览版本,虽然很方便用户却对蜘蛛造成了困难,因为它分不清那个是主,那个是次,一旦让它认为你在恶意重复,你就惨了
  1. User-agent: *
  2. Disallow: /sitemap/ 《禁止蜘蛛抓取文本网页》
复制代码

2、用robots保护网站安全
很多人纳闷了,robots怎么还和网站安全有关系了?其实关系还很大,不少低级黑客就是通过搜索默认后台登陆,以达到入侵网站的目标
  1. User-agent: *
  2. Disallow: /admin/ 《禁止蜘蛛抓取admin目录下所有文件》
复制代码

3、防止盗链
一般盗链也就几个人,可是一旦被搜索引擎“盗链”那家伙你100M宽带也吃不消,如果你做的不是图片网站,又不想被搜索引擎“盗链”你的网站图片
  1. User-agent: *
  2. Disallow: .jpg$
复制代码

4、提交网站地图
现在做优化的都知道做网站地图了,可是却没几个会提交的,绝大多数人是干脆在网页上加个链接,其实robots是支持这个功能的
  1. Sitemap: http:-www-***-com/sitemaps/sitemaps.xml
复制代码

5、禁止某二级域名的抓取
一些网站会对VIP会员提供一些特殊服务,却又不想这个服务被搜索引擎检索到
  1. User-agent: *
  2. 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、目录、网址的写法:都以以正斜线 (/) 开头。

  1. Disallow:/
  2. Disallow:/images/
  3. Disallow:/admin/
  4. Disallow:/css/
复制代码

2、列举一些robots.txt 具体用法:
1)允许所有的robot访问
  1. User-agent: *
  2. Disallow:
复制代码

  1. User-agent: *
  2. Allow: /
复制代码

或者建一个空文件”robots.txt”即可。
2)仅禁止某个机器人访问您的网站,如Baiduspider。
  1. User-agent: Baiduspider
  2. Disallow: /
复制代码

3、仅允许某个机器人访问您的网站,如Baiduspider。
  1. User-agent: Baiduspider
  2. Disallow:
  3. User-agent: *
  4. Disallow: /
复制代码

4、禁止访问特定目录
  1. User-agent: *
  2. Disallow: /admin/
  3. Disallow: /css/
  4. Disallow:
复制代码

要拦截对所有包含问号 (?) 的网址的访问(具体地说,这种网址以您的域名开头、后接任意字符串,然后接问号,而后又接任意字符串),请使用以下内容:
  1. User-agent: Googlebot
  2. Disallow: /*?
复制代码

要指定与某个网址的结尾字符相匹配,请使用 $。例如,要拦截以 .xls 结尾的所有网址,请使用以下内容: User-agent: Googlebot
  1. Disallow: /*.xls$
复制代码

您可将此模式匹配与 Allow 指令配合使用。例如,如果 ? 代表一个会话 ID,那么您可能希望排除包含 ? 的所有网址,以确保 Googlebot 不会抓取重复网页。但是以 ? 结尾的网址可能是您希望包含在内的网页的版本。在此情况下,您可以对您的 robots.txt 文件进行如下设置:
  1. User-agent: *
  2. Allow: /*?$
  3. Disallow: /*?
复制代码

Disallow: /*? 指令会阻止包含 ? 的所有网址(具体地说,它将拦截所有以您的域名开头、后接任意字符串,然后接问号,而后又接任意字符串的网址)。
Allow: /*?$ 指令将允许以 ? 结尾的任何网址(具体地说,它将允许所有以您的域名开头、后接任意字符串,然后接 ?,? 之后不接任何字符的网址)。
以上介绍多数都是Google的http:-www-google-com/support/we … cn&answer=40360,百度的大同小异具体可以看http:-www-baidu-com/search/robots.html

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



上一篇:安装WAMP启动Apache后报Forbidden You don't have permission to access错误解决
下一篇:如何给discuz帖子内容页大标题加上当前页面链接地址?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

巴中热线 - 精彩推荐上一条 /1 下一条

快速回复 返回顶部 返回列表