ChatGPT 登录成功后白屏:5 类原因 + 排查修复

登录跳到 chatgpt.com 后一片空白——多半是脚本加载失败、service worker 卡死或扩展冲突。

白屏意味着 auth 通了、URL 是 chatgpt.com/?...document.cookie 里有 session token,但 React app shell 没渲染出来——多半是某个 JS chunk 加载失败、被 service worker 用旧版本拦截、或者扩展把脚本 / WebSocket 拦了。先打开 DevTools Console,看到的第一条 error 通常就指向原因。

常见原因

1. 浏览器缓存了和当前构建不匹配的 chunk

OpenAI 部署新版本时旧 HTML 引用的 chunk-abc123.js 已经被 CDN 替换成 chunk-def456.js。浏览器拿旧 HTML 去请求旧 chunk,返回 404 / 200 但 hash 对不上。

如何判断:DevTools → Console 看到 Loading chunk N failedChunkLoadErrorUnexpected token '<'(HTML 当 JS 解析失败)。

2. 广告 / 隐私扩展拦了应用脚本

uBlock Origin 的某些第三方滤镜把 *.intercom.io*.statsig.com*.cloudflareinsights.com 全拦了。ChatGPT 在 init 时会要求这些 endpoint,等 timeout 才渲染。

如何判断:DevTools → Network → 看 ERR_BLOCKED_BY_CLIENT 的请求。或者直接看 Console 有没有 net::ERR_BLOCKED_BY_CLIENT

3. Service worker 卡在旧版本

PWA 注册了 service worker 缓存策略。前端大版本发布后,部分用户的 SW 是”半脑”状态——老 HTML 指向新 chunk URL,但 SW 拦截了请求返回缓存的 404 占位符。

如何判断:DevTools → Application → Service Workers,如果 status 不是 “activated and is running” 或 source 显示一个老日期,就是这个问题。

4. 浏览器策略 / 站点权限禁了 JS

公司管的 Chrome 通过 group policy 把 chatgpt.com 加到 “JavaScript blocked”;或者你之前手动 Settings → Site permissions → Block JavaScript on this site。

如何判断:访问 chatgpt.com,地址栏左边的小锁 → Site settings → JavaScript 是否是 Block。

5. CSP / CORS 错误(少见但很硬)

公司代理或扩展(比如某些 VPN)注入了自己的 CSP header,把 script-src 限制得比 OpenAI 原本严。结果应用本来允许的 inline script 全被拒。

如何判断:Console 报 Refused to execute inline script because it violates the following Content Security Policy directive

最短修复路径

从最便宜的开始:硬刷 → 注销 SW → 关扩展 → 改权限。

Step 1:硬刷新强制重新下载 chunk

Mac:     Cmd + Shift + R
Win:     Ctrl + Shift + R 或 Ctrl + F5

如果有效但 30 秒后又白——是 service worker 在重新缓存旧 chunk。继续 Step 2。

Step 2:注销 service worker

DevTools (F12) → Application → Service Workers
→ 找 chatgpt.com 那条
→ 点 Unregister
→ 顺手在 Storage 标签点 Clear site data → 勾掉 cookies(不然要重登)
→ 关掉所有 chatgpt.com 标签
→ 重开

或者一行命令在 Console 干掉所有:

navigator.serviceWorker.getRegistrations().then(rs => rs.forEach(r => r.unregister()));

Step 3:读 Console 的第一条 error

按 F12 打开 DevTools → Console → 重新加载页面,看最早一条红色 error。下表对应处理:

Console 错误原因修法
ChunkLoadError / Loading chunk N failedChunk 缓存对不上Step 1 + Step 2
net::ERR_BLOCKED_BY_CLIENT扩展拦了Step 4
Refused to execute inline scriptCSP 注入Step 5
Failed to register a ServiceWorkerSW 安装失败Step 2
CORS policy: No 'Access-Control-Allow-Origin'代理改了 header换网或 Step 5
Uncaught SyntaxError: Unexpected token '<'Chunk URL 返回了 HTML 404Step 1 + Step 2

Step 4:依次禁用扩展

打开 chrome://extensions → 把这几个先关掉再试:

  • uBlock Origin / AdGuard
  • Privacy Badger / Ghostery
  • NoScript / uMatrix
  • 任何 “Cookie AutoDelete” / “Forget Me Not”

或开个 Incognito + 禁所有扩展窗口(Chrome:Cmd/Ctrl + Shift + N),能用就说明肯定是扩展。再回正常窗口一个个开回去定位元凶。

Step 5:检查 JS 权限和 CSP

地址栏小锁 → Site settings
→ JavaScript: Allow
→ Cookies: Allow
→ Insecure content: Block(默认即可)

公司机器 group policy 锁死的话本地切换没用,要 IT 把 chatgpt.com 加到 JavaScriptAllowedForUrls 策略。

Step 6:换浏览器 / 换 profile 验证

Chrome 白屏,Safari 试。Safari 也白屏可能是账号端 issue(status.openai.com 查 ChatGPT 服务是否绿色);Safari 正常 = 浏览器侧问题,继续上面步骤。

预防建议

  • 浏览器保持最新,老 Chrome / Safari 缺现代 ES 特性会导致 chunk 直接 parse 失败。
  • chatgpt.com 给广告拦截扩展开例外(uBlock:点扩展图标 → 大按钮”暂停”或加 trusted 域)。
  • 别同时装两个广告拦截扩展,规则会打架。
  • OpenAI 大更新(一般在工作日早晨 PT)后第一次访问,主动硬刷一次再用。
  • 给 chatgpt.com 做 bookmark,从 bookmark 进比从历史进更不易踩 stale URL。

相关阅读

标签: #ChatGPT #ChatGPT 账号 #排查 #排查 #白屏