robots.txt文件,提起这个概念,可能不少站长还很陌生:什么是robots.txt文件?robots.txt文件有什么作用?如何配置robots.txt文件?如何正确使用robots.txt文件?下面,就这些问题进行剖析,让你深入认识robots.txt文件。

robots.txt文件是什么?

robots.txt是一个简单的以.txt结尾的文本文件,是搜索引擎Robot(也叫搜索引擎机器人)程序抓取网页时要访问的第一个文件。

robots.txt文件有什么作用?

通过robots.txt文件,可以和各大搜索引擎很友好的对话,引导搜索引擎机器人抓取你推荐的网页,避免一些意义不大或无用网页,例如网站后台、会员交互功能等,这在一定程度上也节省服务器网络资源。另外,robots.txt文件对SEO的意义也很重要,可以很好的避免重复、相似网页,以及一些关键字权重流失;写好robots.txt文件,是每个SEOer必做的功课之一。

如何配置robots.txt文件?

配置robots.txt文件很简单,桌面->右键->文本文档,命名为robots.txt,注意这个文档是以“.txt”结尾。在robots.txt文件里写好规则,用FTP软件上传到你的网站根目录下即可。想检查robots.txt文件配置是否正确,只用在浏览器输入网址:http://你的域名/robots.txt,看能否正常访问即可。

robots.txt文件写法

robots.txt文件写法非常简单,通常以User-agent开始,包含一行或多行Disallow或Allow记录;在robots.txt文件中可以使用“#”进行注释,具体使用方法和PHP一样;另外,robots.txt文件支持*|$|?等通配符。看个简单的例子

# robots.txt文件怎么写?
User-agent: *  #对所有搜索引擎Robot开放
Disallow: /wp-content/ #禁止访问wp-content目录下任何内容

关于robots.txt文件函数说明:

User-agent

该项的值用于描述搜索引擎Robot的名称,至少要有一条User-agent记录;如果User-agent的值为*,则表示该协议对所有搜索引擎Robot都有效;

在robots.txt文件中“User-agent: *”只能有一条,可以同时出现“User-agent: Baiduspider”和“User-agent: Googlebot”的情况。

附:常见搜索引擎蜘蛛Robots名称

Baiduspider http://www.baidu.com
ia_archiver http://www.alexa.com
Googlebot http://www.google.com
Scooter http://www.altavista.com
FAST-WebCrawler http://www.alltheweb.com
Slurp http://www.inktomi.com
MSNBOT http://search.msn.com

Disallow

该项的值用于描述不希望被Robot访问到的一个URL,这个URL可以是一条完整的路径,也可以是部分的,任何以Disallow开头的URL均不会被Robot访问到;

注意“Disallow: /test和“Disallow: /test/”的区别,虽说只区别于一个反斜杠“/”,不过意义完全不同。“Disallow: /test”表示可以禁止的URL包括:/test、/testabc.html、/test/abc这三种形式;“Disallow: /test/”则允许Robot访问/test、/testabc.html,禁止访问/test/abc这种形式。

如果Disallow记录的值为空,即“Disallow:”格式,则说明该网站的所有内容可以被任何搜索引擎Robot抓取;在robots.txt文件,如果有声明User-agent,至少要有一条Disallow记录。

Allow

该项和Disallow对立,表示允许搜索引擎Robot访问指定内容。

robots.txt文件用法实例

允许所有搜索引擎Robot访问

User-agent: *
Disallow:

或者robots.txt文件为空,什么也不写,也能达到同样的效果。

禁止所有搜索引擎Robot访问网站的任何内容

User-agent: *
Disallow: /

禁止所有搜索引擎Robot访问网站的指定内容(如下例中的aaa、bbb、ccc目录)

User-agent: *
Disallow: /aaa/
Disallow: /bbb/
Disallow: /cccc/

禁止指定搜索引擎Robot访问(如下例中的Google机器人:Googlebot)

User-agent: Googlebot
Disallow: /

只允许指定搜索引擎Robot访问(如下例中的百度机器人:Baiduspider)

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

向搜索引擎提交站点地图

http://你的域名/sitemap.xml

目前各大搜索引擎对站点地图支持良好,除了sitemap.xml这种格式外,还推荐sitemap.html这种静态格式,好处多多,不再累述。

robots.txt文件十个注意事项

1)robots.txt文件名必须全部小写,不要为追求个性写成RoboTs.txt等形式;

2)robots.txt文件只能放在网站根目录下面,其它位置无效;

3)robots.txt文件内容对大小写敏感,尤其是包含网址的部分。虽说很多搜索引擎对网址之外的部分没有严格的大小写限制,但是从搜索引擎的严谨性和个人对网站的要求方面来说,还是建议区分大小写;

4)通常,robots.txt文件里只有三个函数:User-agent、Disallow和Allow,通常我们使用前两个组合限制抓取就可以了,个人认为没有必要使用Allow,默认搜索引擎是会抓取你网站所有内容的;

5)robots.txt文件里不要放其它无关内容,要严格遵从规范。可以参考小拼SEM博客的robots.txt文件写法;

6)robots.txt文件只是和搜索引擎的一个“君子协议”,并不意味着每个搜索引擎都严格遵守robots.txt的规则,按照你的意图来抓取网页,要清楚,你的网站在搜索引擎面前没有什么“秘密”;

7)要检查robots.txt文件是否达到了预期的效果,可以通过谷歌网站站长工具中的robots.txt工具测试;

8)禁止搜索引擎收录单独页面。在之前“关于rel=”external nofollow” nofollow精彩点评”一文中,介绍过Robots Meta标签,它区别于robots.txt文件。robots.txt文件主要是限制搜索引擎对整个站点或者目录的访问情况,而Robots Meta标签则是针对一个具体的页面。通常Robots Meta标签的默认值是index和follow,只有inktomi除外,对于它,默认值是index,nofollow。Robots Meta标签总共有四种组合:

<meta name="robots" content="index,follow">或<meta name="robots" content="all">
<meta name="robots" content="noindex,follow">
<meta name="robots" content="index,nofollow">
<meta name="robots" content="noindex,nofollow">或<meta name="robots" content="none">

9)目前绝大多数搜索引擎是支持robots.txt文件规则的,Robots META标签则不是。Google一如既往地强大,对这两种形式都完美支持;

10)建议站点根目录下要放一个robots.txt文件,哪怕是空白文件也好。虽说不放robots.txt文件也没什么影响,但是考虑到Robot访问站点时,第一目标就是robots.txt文件,还是顺着它的意思办吧,谁让游戏规则是它定的呢?!

以上就是robots.txt文件配置和使用方法详解了,希望能对你有所帮助!有关robots.txt文件的写法、用法,如果还有什么疑问,可以给我留言。

robots.txt文件配置和使用方法详解的更多相关文章

  1. php遍历目录与文件夹的多种方法详解

    遍历目录或遍历目录下指定类型的文件,这是每一个童鞋在写程序的时候难免会用到的.PHP本身也提供了很多灰常有用的函数,正确地使用它们,不会有错滴.下面就我个人学习过程中的一些总结,希望对想学PHP的童鞋 ...

  2. Ubuntu 15.04 配置VPN的方法详解

    源 起 不久前因为要更新AndroidSDK 和查找相关资料, 但有些方式不能墙了, 所以为了节约时间成本, 购买了为期一个月的VPN,  对方发来邮件, 提供了二十几个服务器地址, 以及一套自动生成 ...

  3. Linux下针对路由功能配置iptables的方法详解

    作为公司上网的路由器需要实现的功能有nat地址转换.dhcp.dns缓存.流量控制.应用程序控制,nat地址转换通过iptables可以直 接实现,dhcp服务需要安装dhcpd,dns缓存功能需要使 ...

  4. 【Python】Linux crontab定时任务配置方法(详解)

    CRONTAB概念/介绍 crontab命令用于设置周期性被执行的指令.该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行. cron 系统调度进程. 可以使用它在 ...

  5. 网站 robots.txt 文件编写

    网站 robots.txt 文件编写 Intro robots.txt 是网站根目录下的一个纯文本文件,在这个文件中网站管理者可以声明该网站中不想被robots访问的部分,或者指定搜索引擎只收录指定的 ...

  6. Nginx服务器中配置非80端口的端口转发方法详解

    这篇文章主要介绍了Nginx服务器中配置非80端口的端口转发方法详解,文中使用到了Nginx中的proxy_pass配置项,需要的朋友可以参考下 nginx可以很方便的配置成反向代理服务器: 1 2 ...

  7. 不可不知的robots.txt文件

    robots.txt基本介绍 robots.txt是一个纯文本文件,在这个文件中网站管理者可以声明该网站中不想被robots访问的部分,或者指定搜索引擎只收录指定的内容. 当一个搜索机器人(有的叫搜索 ...

  8. laravel 框架配置404等异常页面的方法详解(代码示例)

    本篇文章给大家带来的内容是关于laravel 框架配置404等异常页面的方法详解(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 在Laravel中所有的异常都由Handl ...

  9. [转载]C#读写txt文件的两种方法介绍

    C#读写txt文件的两种方法介绍 by 大龙哥 1.添加命名空间 System.IO; System.Text; 2.文件的读取 (1).使用FileStream类进行文件的读取,并将它转换成char ...

随机推荐

  1. 阿里云ECS(linux)磁盘满触发的mysql的表异常修复案例

    阿里云ECS(linux)磁盘满触发的mysql的表异常修复案例 阿里云技术支持:完颜镇江 问题现象: 磁盘空间满了,第一想到的就是删除无用的服务日志或者升级数据盘. 通常是使用du –sh去分析目录 ...

  2. 整合iis+tomcat

    目的: 将 Tomcat与 IIS整合在一起,共用 80端口.让 iis可以解析 *.asp. *.aspx. *.jsp. servlet和 *.do文件: 第一步:准备工作. 在你的 Tomcat ...

  3. linux初学 :简易的shell脚本

    什么是shell Shell本身是一个用C语言编写的程序,它是用户使用Unix/Linux的桥梁,用户的大部分工作都是通过Shell完成的 Shell有两种执行命令的方式: 交互式(Interacti ...

  4. Scrapy使用心得

    今天安装了大名鼎鼎的Scrapy,不过碰到了不少问题,包括"Unable to find vcvarsall.bat" 这个错误应该很常见的,用了最简单的解决方法: 安装visua ...

  5. System.Data.OracleClient requires Oracle client software version 8.1.7 or greater

    It is a security issue, so to fix it simply do the following: Go to the Oracle folder. 1- Right Clic ...

  6. bootstrap daterangepicker 添加阴历及节假日

    所有的新增都用 'myAdd start'和'myAdd end'标注,所有的修改都用'myChange start'和'myChange end'标注. 借用了 1900-2100区间内的公历.农历 ...

  7. Python(2.7.6) 异常类的继承关系

    BaseException +-- SystemExit +-- KeyboardInterrupt +-- GeneratorExit +-- Exception +-- StopIteration ...

  8. 【转载】Asp.net Mvc 入门视频教程

    专辑: http://www.youku.com/playlist_show/id_2416830.html 订阅: http://www.youku.com/playlist/rss/id/2416 ...

  9. 如何把rtf、doc文件转换为HTML文件

    //retText是路径 1 public string ExtractHtml(string rtfText) { try { //Create word object Word.Applicati ...

  10. shell命令getopts解析

    getopts是一条获取和处理命令行选项的语句,格式为getopts option_string variable .其中option_string中包含一个有效的单字符选项,若getopts命令在命 ...