三大Robots.txt用途&教学,Robots.txt常见使用误区

  • A+
所属分类:SEO

robots.txt是SEO最关键的元素之一,也是搜索引擎爬虫访问网站时第一查看的内容。它用于指示搜索引擎爬虫访问网站时被允许和不被允许爬取的位置,需要注意的是,文件中任何指令中出现小错误都可能导致网站可抓取性差,从而直接影响网站排名。

接下来为大家介绍一下生成robots.txt教学以及用途和常见使用误区。

 

三大Robots.txt用途

一、阻止爬虫抓取网站页面/内容

有时候,网站上有一些我们不想被搜索引擎所收录的网页,就可以使用robots.txt写入指令告诉爬虫不要将这些页面收录。比如我们想要隐藏的一些敏感数据,如:/admin、/scripts、/cgi-bin等等。

如果不将这些敏感数据禁止爬虫爬取,那么网站的后台页面就有可能会在搜索结果中展现,这对于网站来说并不是一件好事情。

 

二、允许特定爬虫爬取网站

有些人为了节省宽带,只允许想要的那部分爬虫访问。这种情况下就可以用robots.txt列出那些允许被访问的搜索引擎蜘蛛,写入允许他们访问的命令,这样可以节省宽带支出,提高服务器性能。

三大Robots.txt用途&教学,Robots.txt常见使用误区

今日头条robots.txt

例如今日头条,它就将除了自己开发的ByteSpider和ToutiaoSpider蜘蛛外,将其他搜索引擎爬虫都禁止了。笔者猜测这么做的原因有两个,其一是今日头条本身流量巨大,无需其他蜘蛛爬取为他们带来流量。其二是今日头条网站内容非常庞大,会导致大量蜘蛛聚集从而消耗服务器资源,带来宽带流量等消耗,导致网站变得卡顿甚至崩溃。

 

三、防止重复内容

很多人会希望把重复内容的页面排出掉,不想搜索引擎将重复的内容收录,因为这有可能会影响到网站的排名。这时就可以使用robots.txt阻止爬虫收录到这些页面,但用户依然可以访问和连接到这些页面。

 

Robots.txt教学

1.创建一个robots.txt文件

首先需要一个纯文本的robots.txt,可以用记事本创建一个。

2.robots.txt格式内容

无论怎么制作robots.txt,都需要用到以下格式:

  • User-agent:X
  • Disallow:Y

其中“User-agent”是指网站指定和哪个搜索引擎蜘蛛交流,“Disallow”则是想要阻止的页面或内容。例如:

1)不允许Google蜘蛛搜寻到图片文件夹

  • User-agent:googlebot
  • Disallow:/images

2)不允许所有蜘蛛搜寻到图片文件夹

  • User-agent:*
  • Disallow:/images

这里的“*”是指在网站上停留的所有蜘蛛,告诉它们不要来爬取网站的图片文件夹

3)隐藏整个网站

  • User-agent:*
  • Disallow:/

这里的“/”代表网站层次结构的“根”,它包括主页和所有它链接到的页面,单用“/”符号,搜索引擎机器人将无法爬取网站。

4)允许完全访问

  • User-agent:*
  • Diasllow:

这样的指令就是告诉机器人,它们可以浏览整个网站,没有什么是不能爬取的。

3.安装robots.txt文件

制作完robots.txt后,将它上传到网站的根目录中。需要注意的是,robots.txt需要区分大小写,因此请确保文件名中使用的是小写。

4.检查robots.txt正确性

设置一个正确的robots.txt文件非常重要,因为任何一个错误都可能会让整个网站被取消收录。

所以如果不确定网站代码是否设置正确, 可以使用Google的一个robots.txt测试工具,它会检查我们上传的文件是否正确。

robots.txt测试工具位于:Google Search Console下的Crawl>robots.txt Tester

 

Robots.txt常见使用误区

1.robots.txt没有放在网站根目录

如果robots.txt放在其他子目录中,就可能会导致爬虫在访问网站时无法发现该文件。

不正确放置方式:https//www.123123.com/about/robots.txt

正确放置方式:https/www.123123.com/robots.txt

2.通配符使用不当

通配符是robots.txt文件为爬虫编写指令中所使用的特殊字符,其中有两个通配符可以在robots.txt中使用,分别是“*”和“$”字符,其中“*”用于表示所有或任何字符串。“$”用于表示URL结尾。

因此,在使用通配符之前需要了解它们的工作原理再使用,不要使用不必要的通配符,否则最终阻止的不是单个URL而是整个文件夹。

正确示例:

  • User-Agent:*(代表所有爬行蜘蛛)
  • Disallow:/assets*(这里“*”代表任何包含“/assets”的URL都不允许爬取)
  • Disallow:*.pdf$(该指令表示阻止任何以.pdf拓展名为结尾的URL)

错误示例:

假如你想阻止的url是:http://www.123123.com/admin

  • User-Agent:*
  • Disallow:/admin/

这里机器人将不会爬取“/admin/”,但会继续爬取“/admin”,因为它没有尾部斜杠。

3.使用NoIndex指令

Google在2019年9月1日起就宣布了NoIndex指令将在robots.txt文件中失效。如果你还在使用它,应尽快更换。

 

4.没有提到Sitemap URL

很多人经常忘记在robots.txt中提及sitemap的位置,这样并不好。提及地图可以有助于爬虫从robots.txt中发现sitemap位置,不必花时间去寻找sitemap,有助于让爬虫更轻松浏览完网站。毕竟,能让爬虫更轻易读懂网站总是更好的。

 

5.阻止CSS和JS被爬取

很多人都会认为CSS和JS被Googlebot收录会有不好影响,因此会在robots.txt中禁止CSS和JS被爬取。但Google的John Mueller建议不要阻止JS和CSS文档,因为Googlebot需要抓取他们才能有效的呈现页面。如果Googlebot无法有效呈现页面,就不会对这些页面进行收录或排名。

 

6.爬虫可以访问临时站点

网站所有开发工作都会在临时站点或测试网站进行,然后部署在网站。但很多人会忘记一个很重要的事情,对于Googlebot来说临时网站和其他网站一样,一样会被发现、爬取、收录。因此,如果不禁止爬虫访问临时网站,那么临时URL很可能会被收录,甚至针对某些搜索词进行排名。

 

7.忽略URL大小写

需要注意不同大小写的URL对于爬虫来说是两个完全不同的URL,因此在robots.txt中所编写的指令,要记得区分url的大小写。

 

总结

如果不想网站敏感页面或内容被搜索引擎爬取或收录,那么及时更新robots.txt文件就非常重要了。这不仅能有助于网站的安全性还能提升搜索引擎优化的最佳结果,为做SEO打下坚实的基础。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: