SEO基本功:如何正确设置使用 robots.txt 文件?

作者:username
来源:知乎

robots.txt 的位置

robots.txt 是一个纯文本文档文件,它应位于网站的根目录下(/robots.txt)。因此,对于网站 www.fuyeor.com,robots.txt 文件的路径应为 www.fuyeor.com/robots.txt

一个 robots.txt 文件仅仅针对一个网域有用。同样的,对于网站www.fuyeor.com,robots.txt 文件的路径应为www.fuyeor.com/robots.txt

但是对于网站fer.fuyeor.com,上面的robots.txt 文件不起作用,因此也需要在该域名下放一个 robots.txt 文件,路径为fer.fuyeor.com/robots.txt

各个域名下的 robots.txt 互相独立,互不影响。

自动草稿

robots.txt 规则

robots.txt 是一种遵循漫游器排除标准的纯文本文件,由一条或多条规则组成。每条规则可禁止或允许特定抓取工具抓取相应网站的指定文件路径下的文件。除非你在 robots.txt 文件中另行指定,否则所有文件均隐式允许抓取。

robots.txt 规则包括了:

User-agent:爬虫的用户代理(UA) 标识符。

Allow:允许访问抓取。

Disallow:禁止访问抓取。

Sitemap:站点地图。不限制条数,你可以添加数条 sitemap 的链接。

#:注释行。

下面是一个包含两条规则的简单 robots.txt 文件:

User-agent: BaiduSpider
Disallow: /

User-agent: *
Allow: /

Sitemap: https://www.fuyeor.com/index/sitemap.xml

User-agent: BaiduSpider 行的意思就是:针对用户代理为“BaiduSpider ”(百度搜索引擎爬虫)的规则,同样可以设置为 bingbot(必应)、Googlebot(谷歌)等等。

Disallow: / 的意思是“禁止访问抓取全部内容”。

User-agent: 行的意思就是:针对全部用户代理(* 为通配符)的规则。其他所有用户代理均可抓取整个网站。不指定这条规则也无妨,结果是一样的;默认行为是用户代理可以抓取整个网站。

Sitemap: 行的意思是:该网站的站点地图文件路径为 https://www.fuyeor.com/index/sitemap.xml

通配符规则

robots.txt 可以使用*$通配符匹配。

Q:不希望 [谷歌] 搜索引擎抓取/收录图片,robots.txt 应该怎么写?

# robots 示例文件
User-agent: Googlebot
Disallow: /*.jpg$
Disallow: /*.jpeg$
Disallow: /*.png$
Allow: /

Sitemap: https://www.fuyeor.com/index/sitemap.xml

示例 2:

User-agent: Googlebot-Image
Disallow: /

Q:不希望搜索引擎抓取/收录一切包含 ?的动态路径,robots.txt 应该怎么写?

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

Sitemap: https://www.fuyeor.com/index/sitemap.xml

热门文章

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注