写文章
染指丶流年
2016-05-10 14:08

创建 robots.txt 文件 --by Google

了解 robots.txt 语法

最简单的robots.txt文件会用到两个关键字:User-agent和Disallow。User-agent(用户代理)是指搜索引擎漫游器(即网页抓取工具软件);Web Robots Database 中列出了大多数用户代理。Disallow 是针对用户代理的命令,指示它不要访问某个特定网址。反之,如果要允许 Google 访问某个特定网址,而该网址是已禁止访问的父级目录中的子目录,则可以使用第三个关键字 Allow。

Google 使用多个用户代理,例如针对 Google 搜索使用 Googlebot、针对 Google 图片搜索使用 Googlebot-Image。大多数 Google 用户代理都将遵循您为 Googlebot 设置的规则,但您也可以改写此选项,仅针对某些 Google 用户代理设置特定的规则。

使用上述关键字时应遵循以下语法:

User-agent: [the name of the robot the following rule applies to]

Disallow: [the URL path you want to block]

Allow: [the URL path in of a subdirectory, within a blocked parent directory, that you want to unblock]

这两行加起来被视为文件中的一个条目,其中的disallow规则仅适用于其上方指定的用户代理。您可以根据需要添加任意数量的条目,并且可以在一个条目中添加多个Disallow行,这些Disallow行可以应用到同一个条目中的多个用户代理。您可以将User-agent命令设置为应用到所有网页抓取工具(以星号(*)列出),如下所示:

User-agent: *

可在 robots.txt 文件中使用的网址拦截命令

禁止访问…                                                               示例

禁止访问整个网站(使用正斜线(/)表示):               Disallow: /

禁止访问某一目录以及其中的所有内容(在目录名后添加正斜线):    Disallow: /sample-directory/

禁止访问某个网页(在正斜线后列出网页):          Disallow: /private_file.html

禁止Google图片访问特定图片:         User-agent: Googlebot-Image

                                                       Disallow: /images/dogs.jpg

禁止Google图片访问您网站上的所有图片:      User-agent: Googlebot-Image

                                                                    Disallow: / 

禁止访问特定类型的文件(例如.gif):     User-agent: Googlebot

                                                              Disallow: /*.gif$

 

禁止访问您网站上的网页,但允许在这些网页上显示AdSense广告(禁止使用Mediapartners-Google以外的所有网页抓取工具)。这种方法会阻止您的网页显示在搜索结果中,但Mediapartners-Google网页抓取工具仍然可以分析这些网页,以确定向您网站的访问者显示哪些广告。

User-agent: *

Disallow: /

User-agent: Mediapartners-Google

Allow: /

 

请注意,指令区分大小写。例如,Disallow: /file.asp会禁止访问http://www.example.com/file.asp,但允许访问http://www.example.com/File.asp。Googlebot还会忽略 robots.txt中的空格和未知指令。

用于简化robots.txt代码的格式匹配规则

格式匹配规则                                                        示例

要禁止访问任意字符序列,请使用星号(*)。例如,示例代码会禁止访问所有以“private”开头的子目录:

User-agent: Googlebot

Disallow: /private*/

要禁止访问所有包含问号(?)的网址。例如,示例代码会禁止访问以您的域名开头、后接任意字符串、然后接问号、而后又接任意字符串的网址:

User-agent: Googlebot

Disallow: /*?

要禁止访问以某种特定方式结尾的所有网址,请使用$。例如,示例代码会禁止访问以.xls结尾的所有网址:

User-agent: Googlebot

Disallow: /*.xls$

要组合使用Allow和Disallow指令禁止访问某些格式的网址,请查看右侧的示例。在此示例中,? 表示会话 ID。您通常需要阻止 Google 访问包含这些 ID 的网址,以防止网页抓取工具抓取重复的网页。不过,如果某些以?结尾的网址 是您想要抓取的网页的不同版本,那么您可以使用下面这种组合Allow和Disallow指令的方法:

User-agent: *

Allow: /*?$

Disallow: /*?

Allow: /*?$指令将允许访问以?结尾的所有网址(更确切地说,该指令将允许访问以您的域名开头、后接任意字符串、然后接?、而后不再接任何字符的网址)。

Disallow: / *? 指令将禁止访问包含?的所有网址 (更确切地说,该指令将禁止访问以您的域名开头、后接任意字符串、然后接问号、而后又接任意字符串的网址)。

    

保存 robots.txt 文件

请务必遵循以下保存规范,以便Googlebot和其他网页抓取工具发现并识别您的robots.txt文件:

您必须将robots.txt代码保存为文本文件,

您必须将该文件保存到网站的顶级目录下(或网域的根目录下),

robots.txt 文件必须命名为 robots.txt。

举例来说,保存在example.com的根目录下且网址为http://www.example.com/robots.txt的robots.txt文件可被网页抓取工具发现,但位于http://www.example.com/not_root/robots.txt的robots.txt文件却无法被任何网页抓取工具发现。

举报
收藏
转发
0/500
添加表情
评论
评论 (6)
最近
最早
3天2夜学会建站

染指丶流年

浑浑噩噩的到了不三不四的年纪…

向TA提问
置顶时间 :

设置帖子类型

普通
新闻
活动
修改

圈内转发

0/104

分享至微信

复制链接

举报

请选择举报理由

留联系方式
垃圾广告
人身攻击
侵权抄袭
违法信息
举报

确认要删除自己的评论吗?

取消 确定

确认要删除自己的文章吗?

取消 确定
提问
设置提问积分
当前可用积分:
-
+
20
50
100
200
偷看

积分偷看

10积分
我的积分(可用积分)
确认偷看

问题已关注

答主回复后,系统将通知你

不再提示