当前位置:首页 > SEO知识 > 正文内容

robots.txt怎么设定?如何禁止搜索引擎爬取网站?

admin2年前 (2023-03-13)SEO知识230

robots.txt 的主要功用在于,告诉搜索引擎某个页面是否应该爬取?

当你在你的网站上加入robots.txt 这个档案,你就可以告诉搜索引擎(例:Google 搜索引擎),网站上哪些网址是可以爬取的,而哪些网址又是不可以爬取的。

robots.txt这个档案主要用来避免网站因要求过多而超载,而不是让特定网页无法出现在Google 搜寻结果。

如果你想要禁止自己的网页出现在搜寻结果,你可以使用noindex 标记,或是使用密码来保护你的网页。

robots.txt 主要就是让你用来告诉Google 搜索引擎,哪些页面不要被爬取,但是如果有其它网站加了一条连结到你的页面上,该页面还是有可能被索引。所以如果你想要让某个页面完全不要让Google 索引,你可以在网页上加上noindex 指令。

本篇文章会完整教学robots.txt 在实务上的作用,以及说明对SEO 会产生什么影响。

robots.txt 是什么?

robots.txt是位于你网站上的一只档案,搜索引擎会读取robots.txt 这个档案,然后参考你给它的建议,这个建议可能是不要爬取某个目录或是某个页面,不过如果你在robots.txt 上加入了某个不希望被搜索引擎页面索引的网址,该网址还是有可能被索引。

如果你希望某个网址不要被Google 索引,你应该是用noindex 而不是robots.txt。

下面是Google 官方说明,使用robots.txt 无法决定你的某个页面是否可以100% 不被Google 索引,要完全不被Google 索引,要使用noindex 标记。

下面是Google 官方说明.png

robots.txt 怎么做?

要加入robots.txt 档案的方法很简单,就是在网址的根目录下面,新增一个叫「robots.txt 」的档案。

举例来说,下面就是一个网站的 robots.txt 档案。

robots.txt 檔案.png

上面的这个 robots.txt 档案,就是在告诉搜索引擎,不要存取 /wp-admin/ 网址下的页面,但是 /wp-admin/admin-ajax.php 这只档案则是可以存取的。

另外上面这只档案还告诉了搜索引擎,网站上的 Sitemap 档案的位置在哪。

robots.txt 可以放在网站子目录吗?

可能有人会有一个问题,那就是可以把 robots.txt 这只档案放在网站上的子目录下方吗?答案是:不行。

robots.txt 这个档案必须放在你的网站主机上的根目录。比方说,如果你想要控制 https://www.***.com/ 下所有网址的检索作业,你的 robots.txt 档案就必须放在 https://www.abc.com/robots.txt,不能在子目录 (例如 https://www.***.com/pages/robots.txt)。

robots.txt 规则与指令

知道 robots.txt 的用途以及应该将 robots.txt 档案放在哪里之后,接下来就是搞懂它的指令与规则了。下面整理常见的 robots.txt 规则。

User-agent:定义下面规则对哪些搜索引擎检索器有效。

Disallow:定义哪些目录或是文件类型不想要被检索器检索。

Allow:定义哪些目录或是文件类型可以被检索器检索。

Sitemap:指定你网站的 Sitemap 档案所放置的位置,这个必须使用绝对路径。

上面就是在写入 robots.txt 这只档案时,最常见的几种语法规则。

另外下面列出各种网站允许/不允许某个检索器抓取的各种情况提供参考。

1.禁止检索整个网站

要禁止 Google 爬取你网站上全部的页面,可以在 robots.txt 档案中加入以下。

User-agent: *

Disallow: /

User-agent 定义的对象为 「*」,表示适用所有检索器。下面加了 Disallow 并定义为「/」,表示所有检索器都不允许爬取网站。

2.禁止检索特定目录及其中内容

要禁止检索器(例如 Googlebot)爬取你网站上某个目录,可以在 robots.txt 档案中加入以下。

User-agent: *

Disallow: /upload/

Disallow: /videos/

上面的意思是,不允许所有检索器抓取 /upload/ 跟 /videos/ 这两个目录。

3.允许单一检索器存取网站内容

要允许某个爬虫爬取你的网站,其余检索器全部禁止,你可以在 robots.txt 档案中加入以下。

User-agent: Googlebot
Allow: /
User-agent: *
Disallow: /

上面允许 Googlebot 爬取你的网站,但是其它检索器全部禁止。

4.允许所有检索器爬取网站,特定检索器不允许

如果你要允许所有检索器都可以爬取网站,但有个特定的爬虫不允许,你可以在 robots.txt 档案中加入以下。

User-agent: Googlebot
Disallow: /
User-agent: *
Allow: /

上面不允许 Googlebot 爬取你的网站,但是其它检索器都可以。

5.禁止检索单一网页

要禁止检索器爬取你网站上的某个页面,你可以在 robots.txt 加入以下语法。

User-agent: *
Disallow: /abc.html

上面不允许所有检索器爬取你网站上的 /abc.html 这个页面,但是其它页面都可以。

6.禁止检索特定类型的档案

要禁止检索器检索你网站上特定类型的档案,你可以在 robots.txt 加入以下语法。

User-agent: Googlebot
Disallow: /*.png$

上面的语法会禁止 Google 检索器检索网站上所有的 PNG 图片。

7.禁止 Google 图片检索器检索特定图片

如果你有一张图片不想要被Google 图片检索器爬取,可以在 robots.txt 加入以下语法。

User-agent: Googlebot-Image

Disallow: /images/abc.jpg

8.禁止 Google 图片检索你的网站上所有图片

如果你想禁止检索的不只是一张图片,而是网站上所有图片,你可以在 robots.txt 档案加入以下。

User-agent: Googlebot-Image
Disallow: /

9.使用 $ 比对特定字符串结尾的网址

如果你是想透过比对网址的方式来禁止检索器爬取,例如让某个字符串结尾的网址通通不要检索,你可以在 robots.txt 加入以下语法。

User-agent: Googlebot
Disallow: /*.pdf$

上面就是禁止「 .pdf」 结尾的网址通通不要检索,例如a.pdf、b.pdf、c.pdf…等等,通通不要被检索。

10.robots.txt 中的 Crawl-deslay 语法

其实 robots.txt 中还有一个语法叫做「Crawl-deslay」,这是用来告诉检索器爬取的间隔。由于 Crawl-deslay 几乎不会用到,所以基本上可以忽略。下面简单列出 Crawl-deslay 的语法规则。

User-agent: *
Crawl-delay: 15

上面的语法是告诉检索器,下次再来访的最短时间间隔是15秒。

如何测试 robots.txt 标记是否正确?

理解了如何在网站上加入 robots.txt 档案,以及了解各种 robots.txt 的语法跟规则,你就可以测试一下自己加入的 robots.txt 语法是否正常。

首先,将你的 robots.txt 上传到网站上的跟目录下方之后,就可以使用 Google 本身提供的「robots.txt 测试工具」来进行在线测试。

进入「robots.txt 测试工具」之后,你可以选择你在 Google search Console 验证的资源,选好就可以前往测试工具页面了。

robots.txt 測試工具.png

进入 robots.txt 测试工具页面之后,你就会看到你的 robots.txt 档案是否正确了。这个测试下方会列出「x个错误、x项警告」,确认都没警告也没错误,那这个 robots.txt 就可以正确运作了。

robots.txt 測試工具頁面之後.png

更新 robots.txt 之后,如何提交给 Google?

一般来说,你是不需要特定告知搜索引擎你已经更新了 robots.txt 的,因为搜索引擎会自动抓取 robots.txt 并自己更新。

不过如果你原本的 robots.txt 有重大错误,你希望告诉 Google 赶快更新你的 robots.txt 档案,那么你可以使用「robots.txt 测试工具」来提交。

前往上面提到的「robots.txt 测试工具」,在测试工具页面有一个「提交」按钮,点下去就可以告诉 Google 赶快来重新爬取 robots.txt 了。

在測試工具頁面有一個.png

robots.txt 在 SEO 中扮演什么角色?

从上面的教学中你会发现,robots.txt 跟关键词排名是无关的,robots.txt 仅仅是告诉检索器哪些页面可以爬取,哪些页面不可以爬取。而且当你在 robots.txt 中告诉检索器某个页面不要被爬取时,该页面还是有可能被索引。要让某个页面不要被 Google 索引,应该使用 noindex 标记才是。

使用 robots.txt 要注意什么?

在 Google 搜索引擎的运作方式中,「爬取」跟「索引」是不同的两个概念。要禁止某个页面不要被爬取跟禁止某个页面不要被索引,需要使用两个不同的处理方式。

robots.txt :禁止某个页面被爬取

noindex meta robots 标记:禁止某个页面被索引

也就是说,robots.txt 无法保证该页面不被索引,因为有可能有其它网站建立了一条反向连结指到该页面,导致该页面在不被爬取的情况下,仍然被 Google 索引。

如果你想要让某个页面不被检索器索引,你可以在该页面的<head></head>区块中加入以下语法:

<meta name=”robots” content=”noindex”>

在该页面加入上述程序代码之后,该页面就不会被检索器索引。

另外,这里需要搞懂一个概念: meta noindex 标记是禁止索引,而不是禁止爬取。也就是 noindex 不是告诉检索器不要来爬取,而是告诉检索器不要索引该页面。

因为:如果检索器连这个页面都不爬取的话,是根本看不到 noindex 标记的。

robots.txt 文件格式跟规则

除了上面的观念之外,还必须注意以下 robots.txt 的使用规则。

文件名必须是 robots.txt,也就是只能小写不能大写。

网站只能有一个 robots.txt 档案。

robots.txt 档案必须位于网站的根目录。

robots.txt 档案必须是 UTF-8 编码的文本文件 (包括 ASCII),Google 会忽略不属于 UTF-8 范围的字符,这可能会导致 robots.txt 规则无法转译。

几乎大部分的文字编辑器都可以用来建立robots.txt 档案,但是不建议使用文书处理软体,因为这类型的软体,常常都会有隐藏的程序码,很容易产生问题。

要测试robots.txt 是否能正常运作,可以使用上面提到的robots.txt 测试工具。

robots.txt 常见问题

robots.txt 一定要放在网站的根目录吗?

是的,robots.txt 只能放在网站上的根目录,放在子目录是没用的唷。

使用robots.txt 禁止某页面被检索,该页面就一定不会被索引吗?

不,禁止被爬取不代表不会被索引,要禁止该页面被索引,需要使用noindex 标记。

robots.txt 档名有大小写分别吗?

有喔,robots.txt 只能命名成小写形式的「robots.txt 」,Robots.txt 或是ROBOTS.txt 都是不正确的。

robots.txt 观念总整理

下面重新整理,关于robots.txt 你该知道的观念。

2.robots.txt 是禁止爬取,而不是禁止索引。也就是即使你使用robots.txt 禁止某个页面不要被检索器爬取,该页面还是有可能被索引。要让页面不被索引,需要使用noindex 标记。

3.下面这四个是robots.txt 常用语法,Crawl-deslay 则几乎不会用到。

User-agent:定义下面规则对哪些搜索引擎检索器有效。
Disallow:定义哪些目录或是档案类型不想要被检索器检索。
Allow:定义哪些目录或是档案类型可以被检索器检索。
Sitemap:指定你网站的Sitemap 档案所放置的位置,这个必须使用绝对路径。

完整的各种robots.txt 使用方式,可以参考本篇文章教学。

扫描二维码推送至手机访问。

版权声明:本文由老苏SEO转载并发布,如侵权可联系删除。

本文链接:https://laosuseo.com/?id=23343

分享给朋友:

“robots.txt怎么设定?如何禁止搜索引擎爬取网站?” 的相关文章

浅谈交换网站链接的方法与技巧

浅谈交换网站链接的方法与技巧

大家好,大家都知道 友情链接是网站之间的简单合作形式,即分别在自己的网站上放置对方网站的LOGO或网站名称,并设置对方网站的超级链接,使得用户可以从合作网站中发现自己的网站,达到互相推广的目。但是我们在交换链接时一定要注意如果对方网站有问题,我们交换后链接后还会受牵连,所以要慎重考虑。今天笔者就跟大...

如何做网站SEO站内优化,快速实现网站排名

如何做网站SEO站内优化,快速实现网站排名

在一些优化群里面,常常会看到一些才做优化的人说。百度优化排名不就是发发外链么。要知道现在的优化早已经不是五六年前的优化了,百度的算法一次次更新,对网站的要求越来越高。现在的百度更喜欢网站漂亮的,对用户友好的。无论是网站的打开速度、还是网站url的长度,以及文章的字体大小、间距,都是百度给予权重的考核...

品牌宣传、数据引流,还在用付费竞价?别忽视了SEO推广

品牌宣传、数据引流,还在用付费竞价?别忽视了SEO推广

现在不管什么行业,只要涉及到线上,必定会用到网络营销,然而大多数的网站建设好之初都会出现没流量、没访客的现象,然后就会直接导致没有客户,没有生意。提到网络营销,很多机构通常会选择用百度竞价的方式来推广品牌或者产品,提升在各大搜索引擎上的排名,但往往忽视了SEO推广。实际上,搜索类营销包括SEM和SE...

SEO网站优化的常规策略你知道几个

SEO网站优化的常规策略你知道几个

在对站点执行SEO优化之初,拟定一个详细完整、科学合理的优化策略,是一种不可或缺的工作。在执行操作过程中,优化策略可以当做开展工作的参考和根据。如此一来,可以为实现引擎搜索优化工作奠定较好的根本。归纳网站seo的对策,首要有以下几个方面。1.关键词策略让引擎搜索可以爬取的网站域名、标题标签、meta...

Shopify怎么做SEO优化?如何提高网站速度

Shopify怎么做SEO优化?如何提高网站速度

Shopify怎么做SEO优化?shopify离不开的就是流量。各大平台都在争相竞争流量,使得获取流程的成本日渐增高。如果要拥有更多的流量,就要对网站不断的做优化运营。Shopify做SEO优化方法:1、网站页面架构要清晰简单说,产品的页面布局和向导要做到逻辑清晰。不仅消费者找起产品来毫不费劲,谷歌...

网站快照不更新怎么办

网站快照不更新怎么办

网站快照是提升网站排名非常有效的手段之一,网站快照在一定程度上反应了网站在搜索引擎上的更新时间,时间越近表示网站更新频率高,所以,网站百度快照不更新,需要引起重视,下面小编来跟大家聊一下网站快照不更新怎么办。1、坚持内容定期更新网站SEO优化是一项长期的工作,不能在两天捕鱼三天晒网的,所以必须定期更...