首頁 >php教程 >php手册 >robots.txt 文件语法

robots.txt 文件语法

WBOY
WBOY原創
2016-06-06 20:01:011346瀏覽

最简单的 robots.txt 文件使用两条规则: User-agent :应用以下规则的漫游器 Disallow :要拦截的网址 这两行会视为文件中的一个条目。您可根据需要加入任意多个条目。您可在一个条目中加入多个 Disallow 行和多个 User-agent。 robots.txt 文件的各个部分

最简单的 robots.txt 文件使用两条规则:

  • User-agent :应用以下规则的漫游器
  • Disallow :要拦截的网址

这两行会视为文件中的一个条目。您可根据需要加入任意多个条目。您可在一个条目中加入多个 Disallow 行和多个 User-agent。

robots.txt 文件的各个部分都是独立的,而不是在先前部分的基础上构建的。例如:

User-agent: *<br>
Disallow: /文件夹 1/User-Agent: Googlebot<br>
Disallow: /文件夹 2/<br>

在本例中,只有符合 /文件夹 2/ 的网址才会被 Googlebot 禁止。

User-agent 和漫游器

User-agent 是一种特定的搜索引擎漫游器。网络漫游器数据库 列出了许多常用的漫游器。您可以将某一条目设置为适用于某一特定漫游器(以显示名称的方式列出)或适用于所有漫游器(以标记为星号的方式列出)。适用于所有漫游器的条目应为以下格式:

User-agent: *<br>

Google 使用多种不同的漫游器 (User-agent)。我们的网页搜索所使用的漫游器为 Googlebot 。Googlebot-Mobile 和 Googlebot-Image 等其他漫游器也会遵循您为 Googlebot 所设置的规则,但您也可以为这些特定的漫游器设置特定的规则。

拦截 User-agent

Disallow 行列出的是您要拦截的网页。您可以列出某一特定的网址或模式。条目应以正斜线 (/) 开头。

  • 要拦截整个网站 ,请使用正斜线。
    Disallow: /
  • 要拦截某一目录以及其中的所有内容 ,请在目录名后添加正斜线。
    Disallow: /无用目录/ 
  • 要拦截某个网页 ,请列出该网页。
    Disallow: /私人文件.html
  • 要从 Google 图片中删除特定图片 ,请添加以下内容:
    User-agent: Googlebot-ImageDisallow: /图片/狗.jpg 
  • 要从 Goo le 图片中 除您网站上的所有图片 ,请执行以下指令:
    User-agent: Googlebot-ImageDisallow: / 
  • 要拦截某一特定文件类型的文件(例如 .gif) ,请使用以下内容:
    User-agent: Googlebot<br>
    Disallow: /*.gif$
  • 要阻止抓取您网站上的网页,而同时又能在这些网页上显示 Adsense 广告 , 请禁止除 Mediapartners-Google 以外的所有漫游器。这样可使网页不出现在搜索结果中,同时又能让 Mediapartners-Google 漫游器分析网页,从而确定要展示的广告。Mediapartners-Google 漫游器不与其他 Google User-agent 共享网页。例如:
    User-agent: *<br>
    Disallow: /

    User-agent: Mediapartners-Google
    Allow: /

请注意,指令区分大小写。例如,Disallow: /junk_file.asp 会拦截 http://www.example.com/junk_file.asp,却会允许 http://www.example.com/Junk_file.asp。Googlebot 会忽略 robots.txt 中的空白内容(特别是空行)和未知指令。

Googlebot 支持通过 robots.txt 文件提交站点地图文件 。

模式匹配

Googlebot(但并非所有搜索引擎)遵循某些模式匹配原则。

  • 要匹配连续字符,请使用星号 (*)。 例如,要拦截对所有以 private 开头的子目录的访问,请使用以下内容:
    User-agent: Googlebot<br>
    Disallow: /private*/
  • 要拦截对所有包含问号 (?) 的网址的访问 (具体地说,这种网址以您的域名开头、后接任意字符串,然后接问号,而后又接任意字符串),请使用以下内容:
    User-agent: Googlebot<br>
    Disallow: /*?
  • 要指定与某个网址的结尾字符相匹配 ,请使用 $。例如,要拦截以 .xls 结尾的所有网址,请使用以下内容:
    User-agent: Googlebot<br>
    Disallow: /*.xls$

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

    User-agent: *<br>
    Allow: /*?$
    Disallow: /*?

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

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

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn