搜索 · AI曝光机器人排除标准 · 爬虫指引文件
robots.txt
robots.txt是一份指引文件,用来告诉搜索引擎和AI的自动访问程序(爬虫)网站的哪些地方可以读取。
就像贴在店铺后门的“员工以外禁止入内”牌子。守规矩的顾客会遵守,但它并不是一把锁。
再详细一点
它固定放在“店铺地址.kr/robots.txt”。可以按爬虫名称分别写明允许或禁止,比如Google的Googlebot、Naver的Yeti、OpenAI的GPTBot。
如果不小心把整个网站都屏蔽了,网站可能会从搜索和AI回答中整体消失。制作期间设置的屏蔽在上线时忘了解除,这种失误相当常见。
robots.txt是任何人都能打开查看的公开文件,所以并不是安全防护手段。需要隐藏的页面,应该用登录或密码来保护。
robots.txt长什么样?
robots.txt是一个纯文本文件,逐行写明“针对哪个爬虫(User-agent)”“哪里不要进(Disallow)”“哪里可以进(Allow)”。2022年9月,国际互联网标准组织IETF以RFC 9309发布了它的标准文档。
文件名必须是robots.txt,位置必须在网站的根目录,格式必须是UTF-8纯文本文件。规则只适用于该文件所在的域名 · 协议 · 端口,所以“shop.店铺地址.kr”这类子域名需要单独的文件。
字段名(User-agent、Disallow)不区分大小写,但路径区分。“/Admin”和“/admin”会被视为不同的路径。
- User-agent: * → 适用于所有爬虫。
- Disallow: /admin/ → 请不要读取/admin/下面的内容。
- Allow: / → 其余部分都可以读取。
- Sitemap: https://店铺地址.kr/sitemap.xml → 站点地图在这里。
robots.txt和noindex有什么区别?
robots.txt的意思是“请不要来读取”,noindex的意思是“可以读取,但不要放进搜索结果”。Google明确说明,robots.txt并不是把页面从Google搜索中移除的手段。
即使是被robots.txt屏蔽的页面,只要别处有指向它的链接,也可能以只有网址、没有描述的形式出现在搜索结果中。想确保从搜索中移除,就要用noindex,并且不能用robots.txt屏蔽这个页面,爬虫才能读到noindex。
实际操作时这样分工就行:不需要给顾客看的提示页面用noindex;爬虫可能无休止地兜圈子的搜索 · 筛选网址用robots.txt;包含个人信息的地方用登录来限制访问。
表格可以左右滑动查看
| 方式 | 作用 | 搜索结果 | 适用场景 |
|---|---|---|---|
| robots.txt Disallow | 不让爬虫来读取页面 | 如果有链接,可能只显示网址 | 管理页面、站内搜索结果这类爬虫容易兜圈子的地方 |
| noindex | 读取后不放进搜索目录 | 从搜索结果中移除 | 预约完成 · 测试页面 |
| 登录 · 密码 | 只允许获得许可的人进入 | 爬虫也进不来 | 会员信息、订单记录、内部资料 |
robots.txt怎么制作和检查?
大多数建站工具和框架都会自动生成robots.txt。您只需在上线前打开看一次,按下面的步骤检查即可。
Naver Search Advisor提供简单生成并下载robots.txt的功能,还能对修改后的文件立即提交抓取请求,并测试某个页面是否被屏蔽。Google则不需要另外提交新文件,它会自己来读取。
如果修改robots.txt后想尽快通知Google,可以在Search Console的robots.txt报告中请求重新抓取。否则,Google缓存的旧文件可能还会沿用一段时间。
- 01在无痕窗口中打开“店铺地址.kr/robots.txt”,确认文件以文字形式显示。
- 02检查“User-agent: *”下面是否只有一行“Disallow: /”。如果是,说明整个网站都被屏蔽了。
- 03看看Disallow里是否只写了管理页面这类不需要爬虫读取的路径。
- 04确认最下面的Sitemap行里写有站点地图的完整网址。
- 05在Google Search Console设置菜单的robots.txt报告中确认没有错误。
- 06在Naver Search Advisor网站管理员工具的“验证”菜单中对robots.txt提交抓取请求,并测试主要页面是否显示为可抓取。
没有robots.txt或robots.txt出错会怎样?
没有这个文件时,搜索引擎爬虫会认为所有页面都可以读取。Naver和Google都会把robots.txt返回404这类“不存在”的响应理解为没有任何限制。
服务器错误(5xx)则相反,是有风险的。Naver会将其理解为“全部不允许”;Google会在最初12小时内停止抓取网站,之后最长30天内沿用最后一次读到的规则。服务器不稳定的话,搜索引擎爬虫可能完全读不到您的网站。
另外还有几条值得了解的标准。Google通常会把robots.txt缓存最多24小时再使用,所以修改的内容可能不会马上生效,而且超过500KiB的部分会被忽略。Naver说明,如果robots.txt返回的是HTML文档,可能会忽略其中的规则,视为“不存在”。
怎么用robots.txt管理AI爬虫?
AI爬虫也可以按名称(User-agent)分别写明允许 · 屏蔽。比如OpenAI把用于训练的GPTBot和用于ChatGPT搜索的OAI-SearchBot分开使用;Google则通过Google-Extended这个名称,让网站单独决定是否允许内容用于Gemini训练和作为回答依据。
Google搜索的Google AI概览和AI模式遵循普通搜索爬虫Googlebot的设置。Google表示,Google-Extended不会影响网站是否被搜索收录或排名。反过来,如果屏蔽了Googlebot,网站可能会同时从普通搜索和AI功能中消失。
对店铺网站来说,顾客问AI时能得到准确信息,很多时候是好事。建议把训练用和搜索用分开考虑,先评估至少对AI搜索用的爬虫保持开放。不过robots.txt只是建议,不能保证所有爬虫都会遵守。
robots.txt常见的错误有哪些?
把想隐藏的路径写进robots.txt,等于把路径告诉了所有打开这个文件的人。国际标准文档也写明,robots.txt规则不是访问权限控制机制,不能代替安全措施。
屏蔽样式文件(CSS)或脚本(JS)的路径也是常见错误。搜索引擎爬虫要连这些文件一起读取,才能正确理解页面,所以Naver也建议对这类资源采用和页面相同的规则,或者直接允许抓取。
上线前,请把robots.txt和noindex成对检查。解除制作期间的屏蔽,对开发人员来说只是改一行代码,但一旦漏掉,网站可能会在搜索中消失好几周。
- 制作期间加的“Disallow: /”上线后还留着
- 加了noindex的页面又用robots.txt屏蔽,导致noindex读不到
- 屏蔽了CSS · JS · 网站图标(Favicon)的路径
- 把robots.txt放在子文件夹而不是网站根目录
- 路径的大小写与实际网址不一致
举个例子
- 在文件里写明管理后台地址(/admin)不让搜索爬虫读取。
只需确认这些
- 打开店铺地址.kr/robots.txt,确认没有“全部屏蔽”的设置
- 是否同时写上了站点地图地址
- 是否决定好了要屏蔽还是开放AI爬虫
我的店需要吗?
所有网站都有这个文件。上线前一定要检查一遍。
在ISSYMO
在搜索 · AI曝光基础设置中,我们会一并整理robots.txt和站点地图,并开放给主要AI爬虫读取。
了解SEO · GEO常见问题
参考资料
最后更新于