当前位置:首页 >  站长 >  建站经验 >  正文

robots.txt写错把整站屏蔽了?先记住这条底线

 2026-09-22 11:26  来源: 互联网   我来投稿 撤稿纠错

  一键部署OpenClaw

robots.txt 写错最惨的一种,是里面多了一行 Disallow: /,整站被屏蔽,收录唰唰往下掉,自己还以为是搜索引擎出了问题。这种事故每年都在发生,原因往往不是技术难度,而是改文件时随手复制了别人的模板,或者调试时忘了删掉临时规则。下面先说这条底线,再讲怎么自查、怎么恢复。

一、这条底线:Disallow: / 等于对爬虫关站

现象:站点收录几天内掉了一大截,抓取频次归零,页面上什么都没改。

原因:在 User-agent: * 之下写一行 Disallow: /,意思是禁止所有爬虫抓取全站。爬虫遵守规则,看到这行就再也不来了。这不是降权,是站点主动把门锁上了。

做法:永远不要在生产环境的 robots.txt 里写单独的 Disallow: /。测试屏蔽效果时,用具体的目录路径,比如 Disallow: /test/,绝不整站。真要临时关站,也优先用其他方式,而不是拿 robots.txt 当开关——它生效快,恢复却很慢,爬虫重新回来需要时间。

二、其余三种容易写错的写法

一是把 Allow 和 Disallow 的顺序弄反。以 / 开头的通配规则里,更具体的规则优先,但很多人以为后写的覆盖先写的,结果该开的没开、该挡的没挡。二是大小写写错,路径区分大小写,/Admin/ 和 /admin/ 是两条完全不同的规则,后台路径写错就挡不住。三是通配符滥用,把 Disallow: /* 当成“挡住所有”,实际含义和 Disallow: / 差不多,一样会把站关掉。改完务必逐条读一遍,把星号和问号所在的行单独拎出来确认。

三、一段脚本帮你排查

这段脚本做两件事:抓取你的 /robots.txt,逐行找出可能屏蔽全站的写法(Disallow 值为 /、/*、*);再抓一次首页,看页面头部有没有 noindex。要改的只有 BASE 这一行。跑完如果有任何一条命中,就说明站点正在被屏蔽或即将被屏蔽,必须立刻处理。

# 排查 robots.txt 是否屏蔽全站 + 首页是否被 noindex
import urllib.request, re
from urllib.error import HTTPError, URLError

BASE = "https://www.example.com" # 改成你的站点

try:
robots = urllib.request.urlopen(BASE + "/robots.txt", timeout=10).read().decode("utf-8", "ignore")
for line in robots.splitlines():
s = line.strip()
if s.lower().startswith("disallow") and s.split(":", 1)[-1].strip() in ("/", "/*", "*", "/*.*"):
print("高危规则:", s, " )
except (HTTPError, URLError) as e:
print("robots.txt 读取异常:", e)

html = urllib.request.urlopen(
urllib.request.Request(BASE, headers={"User-Agent": "Mozilla/5.0"}), timeout=10
).read().decode("utf-8", "ignore")
m = re.search(r'<meta[^>]+name=["\']robots["\'][^>]*>', html, re.I)
print("首页 meta robots:", m.group(0) if m else "未设置")
if m and "noindex" in m.group(0).lower():
print(" )

跑完看两项输出:出现“高危规则”的,说明 robots.txt 正在关站;出现“首页被 noindex”的,说明屏蔽来自页面本身而不是 robots 文件。两种情况的处理方式不同,先分清是哪一种,再动手改,别一上来就删文件。

四、确认被屏蔽后怎么恢复

第一步,改回 robots.txt,删掉屏蔽全站的那行,保留必须挡的后台目录,保存后立刻用浏览器访问确认。第二步,去百度搜索资源平台的抓取诊断里测首页,确认返回“抓取成功”。第三步,观察抓取频次,一般几天内会从零开始回升,收录在之后两三周逐步恢复。恢复期间别急着改其他东西,保持站点稳定,让爬虫重新建立信任。如果抓取频次迟迟不动,再检查是不是同时还有 noindex 或服务器返回异常,两处都排查过再判断。

robots.txt 的底线就一条:任何情况下都不对全站写 Disallow: /;定期用脚本扫一次,出问题立刻改回并跑抓取诊断,比事后猜原因快得多。

相关阅读:

《robots.txt怎么写?规则语法与常用配置示例》

《sitemap怎么生成?生成、提交与自动更新一条龙》

《站里死链越积越多?不处理会拖累整站的抓取》

申请创业报道,分享创业好点子。点击此处,共同探讨创业新机遇!

相关标签
robots.txt技巧

相关文章

  • robots.txt别乱写:放行了不该放的,拦住了该来的

    网站收录异常,先翻robots.txt。这个文件权力很大:写错了百度和Google就不抓你的页面,而你未必知道。见过把整站Disallow的,见过把后台路径全列出来的,两种都是事故。User-agent:*Disallow:/admin/Disallow:/tmp/Disallow:/*.pdf$S

  • robots.txt文件怎么写才正确呢?

    曾庆平SEO在前面的文章中讲过robots.txt概念的时候,留下一个问题:为什么曾庆平SEO的robots.txt写得那么复杂?曾庆平SEO的robots.txt:http://www.xxx.com/robots.txt这样做的目的是,让搜索引擎看来网站更规范和权威。

  • 看完秒懂robots.txt写法和注意事项

    robots.txt直接放在网站根目录下,是蜘蛛访问网站时,第一个抓取的文件。robots.txt是告诉蜘蛛网站的哪些文件允许抓取,哪些文件不允许抓取,甚至可以指定特定的蜘蛛能不能抓取特定的文件。没有抓取就没有收录,没有收录就没有排名。所以作为第一蜘蛛访问的文件,写好robots.txt是很重要的。

  • 解除网站Robots封禁全过程

    obots协议或者说robots文件对搜索引擎优化中非常重要,但设置出错可能会导致收录下降或不能正常收录。今天,小小课堂SEO自学网带来的是《【robots文件协议】解除Robots封禁全过程》。希望本次的百度SEO优化培训对大家有所帮助。

  • robots协议对网站、搜索引擎的重要性

    很多站长最头疼的一个问题就是,搜索引擎蜘蛛为什么不光顾自己的网站,或者光顾频率比较低。这样对网站收录的影响是比较大的,直接影响到网站的排名。先谈一下搜索引擎蜘蛛的工作原理吧,蜘蛛又称网络爬虫、网页蜘蛛、网络机器人,更生动的叫网页追逐者。一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些

    标签:
    robots.txt技巧

热门排行

信息推荐