搜索引擎主要负责两项主要工作,以完成其工作。第一项是通过到处抓取和索引更新来发现网络上的内容。接下来的工作是寻找相关的信息到其 索引的 指南,以根据搜索查询提供正确的内容。
那么,Robots txt是什么呢?
搜索引擎遵循的是 链接和从一个网站到另一个网站这个过程也被称为 "spidering"。每当机器人或网络爬虫到达一个新的网站时,在开始爬行之前,它首先会寻找Robots.txt文件。如果它找到了,它就会阅读该文件,以获得有关如何爬行该网站的信息,特别是访问什么和不访问什么的信息在没有 robots.txt 文件的情况下,用户代理可以开始抓取网站上的其他信息。
该文件应至少包括以下两个要素。
用户-代理。(用户代理的名称) 不允许。(不能被抓取的URL字符串)
以上两行加起来可以看作是一套不连续的用户代理指令,并使用换行符(/)与其他指令集分开。
如果在文件中为一个以上的用户代理指定了一条规则,那么爬虫将首先读取并遵循单独一组指令中提到的指令。
任何人都可以通过简单地使用浏览器的方法查看网站上存在的robots.txt内容。
你需要在主文件后添加 robots.txt。 像https这样的URL://demo.com/robots.txt或其子域如https://shop.demo.com/robots.txt。
Robots.txt文件应该在根域之后,这是强制性的。因此,你可以在浏览器上提到同样的内容。
如果你在输出中没有找到任何.txt页面,那么这意味着目前网站上没有(活的)robots.txt页面。
根域名(demo.com/robots.txt)和它的每个子域名都应该有单独的robots.txt文件(博客.demo.com/robots.txt)。
该文件中的所有指令必须由人类或任何软件机器人从上到下阅读!机器人或用户代理有可能不阅读网站的robots.txt文件。这通常是在电子邮件地址刮削器或恶意软件机器人类型的邪恶爬行器中发生的。
在网站中使用robots.txt有很多好处。比如说。
- 要问 搜索引擎以 做 不索引你网站上的某些文件,如PDF、图片等。元指令也可以作为robots.txt的替代品,避免对网页进行索引,但对资源文件不起作用。
- 网站管理员可以通过提供有用的信息来确保对网站的有效抓取 提示 到它的机器人。
- 为了避免搜索引擎显示任何内部搜索 公共SERP上的结果页.
- 通过屏蔽网站中某些不重要或不必要的页面,你可以在所需的页面上最大限度地增加你的抓取预算。
- 要像元机器人一样使用,以避免重复的内容在SERP中显示。
- 你可以在它的帮助下,不对你网站的内部搜索结果或破损网页进行索引。
- 为了防止抓取器可能出现的网络服务器过载现象 负荷 通过增加一些爬行延迟,一次可以爬行多个内容。
- 如果你不希望人们登陆任何处于阶段性版本的页面,这可能会影响人们的印象,特别是对第一次访问网站的人。
- 为了帮助用户代理轻松访问 网站地图(s).
网站管理员可以将网站的某一特定部分(特别是正在建设中的或不完整的)完全保密,不被爬行机器人发现。
如果被索引的URL数量超过了预期,就有必要创建robots.txt文件。
它是 最好的 使用任何文字编辑器,如记事本或wordpad,创建一个符合规则的简单文本文件,以制作Robots.txt。
只要包括基本指令,如 "User agent: "和 "Disallow:/"来为网站创建一个基本文件。
任何人都可以通过在robots.txt文件内遵循兼容的语法来包含这些规则。
最好的方法是首先生成你的网站的网站地图,并在底部包括其URL,使其更加有效。
robots.txt文件内的常用术语是。
- 爬行延迟 - 它表明一个指定的爬虫在访问一个页面的内容之前需要等待多少时间。该命令对Googlebot不起作用,但爬虫 率 可以从谷歌搜索控制台设置,以完成同样的工作。
- 用户代理--它提到了一个特定的网络爬虫或用户代理(一般是搜索引擎),网站管理员希望向其发出爬行指令。有 技术 搜索引擎的名称,如Googlebot代表Google等等。
- 允许(由谷歌使用)--这是一个有用的语法,可以指示谷歌机器人抓取一个子文件夹或一个存在于任何父子文件夹或可能被禁止的页面内的页面。
- Disallow - 它是指示网络机器人不要访问任何特定的URL。该命令不应该对任何URL允许两次。
-Sitemap - 任何兼容的用户代理,如Yahoo、Ask、Bing或Google,都可以访问这个命令,根据一个URL找到提到的XML网站地图的位置。
注意:像美元符号($)和星号(*)这样的正则表达式可以由 搜索引擎优化 以帮助Bing和Google的用户代理识别子文件夹或页面。这里的*是模式匹配语法,涵盖了所有可能的URL结尾选项,而*则代表不同的字符序列,作为一个简单的通配符工作。
它可以通过为每个或所有的网络机器人指定指令来阻止或禁止其访问网站的某个页面或子文件夹来实现。
以下是robots.txt文件中常用的一些指令,用于指示其用户代理或网络爬虫。
1)让每个网络爬虫都能找到所有内容
语法。用户-代理。* 不允许。
2) 不允许某个网络爬虫访问某个文件夹
语法。用户-代理。Googlebot 不允许。/extra-subfolder/
(以上指令是要求谷歌的爬虫不要访问任何位置的页面www.site-name.com/extra-subfolder/)
3) 不允许所有网络爬虫访问任何内容
语法。用户-代理。* 不允许。/
(你可以用简单的指令来解决如何阻止机器人Robots txt?)
4) 不允许某一网络爬虫访问某一特定网页
语法。用户-代理。Googlebot 不允许。/extra-subfolder/useless-page.html
这个流行的搜索引擎使用了许多 蜘蛛 围绕着整个网络和扫描网站的软件。其中突出的是Googlebot、Googlebot-images(用于图片)和Googlebot-news(用于索引和向用户提供新闻信息)。
使用能够创建标准UTF-8文本文件的文本编辑器。使用文字处理器创建文件可能会添加任何意想不到的字符,如大括号,并可能以任何专有格式保存,这可能会引起爬虫理解说明的问题。在指定#字符或标记后,可以添加注释。
这里有一些关于创建文件的建议,特别是针对谷歌用户代理。
1)该文件应遵循机器人排除标准。
2)它可以包括一个或多个规则,允许或阻止指定的爬虫访问网站的特定路径。
3)网站管理员应该熟悉robots.txt文件的几乎所有语法,以了解每个语法的微妙行为。
4)网站不能有一个以上的 robots.txt 文件。
5)该文件既支持子域(如http://website.demo.com/robots.txt,也支持任何非标准的端口,如(http://demo:8181/robots.txt)。
6)如果你不知道或无法访问你的网站根目录,那么最好联系网站托管服务提供商,将robots.txt文件保存在同一目录下。如果你不能访问网站根目录,那么可以使用元标签作为替代性的阻止方法。
7) robots.txt文件中可以包含一个以上的组指令或规则(每行提到一个)。
8) 它只支持ASCII字符。
9)一个组提供关于它适用于谁(用户代理)以及代理不能/可以访问的所有文件或目录的信息。指令是从上到下处理的。一个网络机器人只与一个规则集相关联,这个规则集可以单独指定,也可以先出现。
10) 按照默认的假设,机器人可以通过 "Disallow: "语法抓取任何目录或页面。
11) 文件中使用的指令是区分大小写的,如Disallow。/one.xml并不适用于ONE.xml。
12) 它适用于全部 网站的域名由以下两者之一组成 https或http协议.
通常情况下,Bing和Google的用户代理会去使用一组特定的指令,但在默认情况下,首先,匹配的规则是最好的,因为不同的搜索引擎网络机器人以不同的方式解释这些指令。
此外,还建议网站管理员在Robots.txt文件中尽量避免使用爬行延迟语法,以减少搜索引擎机器人的总爬行时间。
你可以使用robots.txt测试工具。 谷歌的网站管理员控制台 检查谷歌的机器人是否能够抓取你已经从其搜索中封锁的URL。它还可以显示逻辑错误和语法警告,如果你的robots.txt中存在任何错误。你可以在那里编辑并重新测试。
一旦一切正常,你就可以应对这些变化,并更新位于你网站服务器上的主文件。同样,你可以使用不同的工具来提前检查搜索引擎在阅读你网站的robots.txt后的抓取行为。
你也可以通过使用 "封锁的URLs "来检查你的网站的robots.txt是如何执行的,该功能在 "抓取 "部分的左侧提供。 谷歌网站管理员工具.然而,它可能不会显示 robots.txt 的当前或更新版本,但可用于测试目的。
试着用任何工具定期检查你的robots.txt文件,看看里面的东西是否都是有效的,文件是否按照预期的正确方式运行!顺便说一下,搜索引擎可能需要很多天甚至几周的时间才能通过从robots.txt中读取相同的内容来识别一个不允许的URL,并删除其索引。
在将所有规则集纳入文件并以 robots.txt 命名后,需要将其保存在服务器中的网站主文件夹或根文件夹中。根级文件夹可以是 "www "或 "htdocs",这有助于 robots.txt 出现在你的域名旁边。
我们总是建议保持robots.txt文件的合理大小,避免在文件中提到不需要的指令。这是因为早在几年前,谷歌的约翰-穆勒(John Mueller)就已经澄清了一个事实,即谷歌机器人只会访问robot.txt文件的前500kB。一个巨大的文件可能会以一种不受欢迎的方式被截断,形成一行可能被解释为不完整的规则。
它也被称为机器人排除协议或机器人排除标准,被网站用来与网络机器人或爬虫沟通。搜索引擎使用其机器人对网站进行分类。
网站管理员使用robots.txt文件来指示或引导这类机器人,使其网站获得更好的索引。如果你不想控制用户代理访问你网站的任何区域,你就不需要 robots.txt 文件。人们可以从任何高级主题中找到关于robots.txt的更多细节,如如何创建搜索引擎机器人?
为了获得更好的搜索引擎排名,让它的爬虫轻松地到达和访问你的网站是最好的SEO实践。我们的网站通常由很多不需要的页面组成,而不是我们所期望的那样,当搜索引擎机器人爬行你的网站的每一个页面时,它肯定会消耗更多的时间,这肯定会对其产生负面影响。 排名.
谷歌使用每个网站的抓取预算(分为两部分,抓取率限制和抓取需求)来决定它想要或可以扫描的URL数量。因此,如果你帮助这类机器人或用户代理只访问和索引你网站上最有价值的内容,robots.txt是必须的!
搜索引擎优化师从来不希望网站的任何部分或内容被封锁,而这些内容是有必要被抓取的。
- 像谷歌这样的搜索引擎可以有多个用户代理,如Googlebot-Image(用于搜索图片)和 Googlebot (用于有机搜索)。属于同一搜索引擎的许多用户代理可以遵循相同的规则,因此许多网站管理员跳过为这些爬虫中的每一个指定指令。一个SEO可以利用这一点,向每个爬虫提及不同的指令,即使它们长期属于一个搜索引擎,以更好地控制它们的爬行行为。
- 为了更好地进行搜索引擎优化,不允许的链接或页面必须不包括任何需要跟踪的进一步链接。因此,被封锁的页面不应该向链接目的地传递链接权益,或者最好使用任何其他封锁机制。它们也必须不与搜索引擎可访问的其他网页相连接,即不被元机器人、robot.txt或其他方式禁止的网页。否则,重要的链接资源将无法被搜索引擎访问和索引。
- 在对文件进行任何更新后,最好直接在谷歌上提交robots.url网址,以确保目标用户代理快速访问该网址。一般来说,搜索引擎至少在一天内更新一次缓存的robots.txt内容。
最好能提到所有或任何一个地方的位置。 网站地图 基于网站的域名在其robots.txt文件的底部部分。顺便说一下,网站地图是XML文件,其中包含关于网站页面的详细信息,如其URL与相关元数据,如其重要性,其更新间隔,以及最后一次更新。
所有这些信息都可以被搜索引擎的机器人用来智能地抓取一个网站。因此,通过这种方式,网站管理员可以帮助支持网站地图的用户代理了解和访问网站地图中的所有URL,并在发现一个网站内的一个链接到另一个链接或从另一个网站发现页面的过程中了解更多信息。
比如说。
浏览器地址:https://www.demo.com/robots.txt
输出。
用户-代理。*
不允许。*.dl.html
允许。/*.html$
网站地图:https://www.demo.com/en-au/sitemap.xml
网站地图:https://www.demo.com/en-se/sitemap.xml
网站地图:https://www.demo.com/en-us/sitemap.xml
(上述指令是为了通过robots.txt文件调用多个网站地图)。
robots.txt存在安全风险,因为许多恶意的机器人不能遵循它,以及人们可以利用它知道所有不允许的链接并直接访问它们。因此,作为一个解决方案,你可以用密码保护你的网站中包含私人内容的区域,这样,即使入侵者知道了它的位置,也无法访问它。
为了使敏感数据不被索引或出现在SERP中(无论是直接还是间接,即通过喜欢的页面),最好使用任何其他方法,而不是从robots.txt中禁止相同的内容来阻止该页面。它可以是无索引元指令或密码保护方法。
WordPress 一般来说,在根目录下直接为其网站制作一个虚拟的默认robots.txt文件,在目录上是看不到的。因此,最好是创建一个与任何默认设置相重叠的新文件,特别是禁止登录或注册页面,这对搜索引擎来说并不重要!
许多人通常对如何在WordPress或其他平台上删除Robots txt感到困惑。然而,这个过程对所有的人来说都是一样的!robots.txt文件需要保存在网站的顶级目录下,即根域或主目录,以便帮助机器人轻松找到它。因此,你需要的是直接从那个特定的文件夹或位置删除该文件。
尽量不要在robots.txt文件中加入隐藏用户机密信息的指令。这是因为该文件是一个可公开访问的文件,人们可以通过在根域的末尾添加/robots.txt来查看其指令。
通过这种方式,任何人都可以知道网站的站长允许哪些网页被所有或特定的网络机器人抓取或不被抓取。该文件必须只保存为 "robots.txt "名称,因为它是区分大小写的,所以任何用户代理都不会接受其他组合
最后,你可能会混淆x-robots、meta robots和robots.txt这些听起来相似的术语。其中,x-robots和meta是元指令,但robots.txt是一个文本文件,它们被用来应用不同的功能。
具体来说,x-robots和meta是在页面元素(或单个页面)层面上规定索引行为,而robots.txt则是证明关于主管或网站侧抓取行为的信息。
搜索引擎机器人有更高的机会可以在SERP上以更好的方式索引和显示你的网站内容,并在扫描同一网站时很好地使用它的抓取预算,使它更明显。通过使用robots.txt也可以阻止对自动生成的WordPress标签页面的抓取,并防止任何更多的重复内容。
总的来说,在处理Robots.txt文件中包含的内容时,你需要非常小心。毕竟,robots.txt文件中的一个小错误可能会使你的整个网站被取消索引。
本帖最后修改于2023年2月4日
本网站使用cookies。
阅读更多