Repository navigation
DSH 启动约 70 次后永久打不开(Web authentication failed)——auth cookie 无上限累积,请求头超过 16KB 被 431 #11514
hoshiyumeen
started this conversation in
General
Replies: 2 comments
|
我搞不懂这个bug反馈了十几天了更新了几个版本都还一直存在 |
0 replies
|
补充一个独立的 Windows +
结论与 #11408 一致:cookie 名 = 前缀 + |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
问题
DSH 用一段时间后,某天突然再也打不开,界面报 Web authentication failed。卸载重装、换配置都没用,只有删掉 Network 目录下的 cookie 文件才能恢复。
根因
DSH 每次启动(或每次建立会话/重连)都会向本地 127.0.0.1 写一条新的鉴权 cookie。
这条 cookie 的名字是随机的,形如 dsh-auth-xpZr2djv5o23MisJi。
Chromium 的 cookie 去重键是 host_key + name + path。名字随机 = 永远不重复 = 只增不减。
所有这些 cookie 会一起以 Cookie: 请求头发送,每条开销约 225 字节。
累积到约 73 条时,请求头超过约 16KB,服务端返回 431 Request Header Fields Too Large,鉴权失败,界面就显示 Web authentication failed。
本机实测数据
环境:Windows 10 专业版 19045,DSH 0.2.1-rc.3(nightly 渠道),Electron 44.7.0
13 小时内累积 27 条,全部 host_key = 127.0.0.1
合计请求头 6089 字节(5.9KB),距 16KB 还有 10.1KB
单条开销约 225.5 字节(名字约 22 字节 + 值约 172 字节 + 等号与分隔符)
16KB ÷ 225.5 ≈ 73 条,与社区反馈的"约 72 次启动后必现"吻合
条目的创建时间间隔是 2–18 分钟,并不严格等于"每次启动一条",更像是每次会话或每次重连一条。所以实际到墙时间可能比 72 次启动更快。
说明:我这台机器目前才 5.9KB,没有亲自触发到 431。上面的阈值来自社区复现,我用本机计数和单条开销做了交叉验证。
临时规避
彻底退出 DSH(托盘退出 + 任务管理器里不能有 DeepSeek Harness 进程)后,删除以下两个文件,再启动会自动重建:
代码块
%APPDATA%@deepseek-ai\dsh-desktop\Network\Cookies
%APPDATA%@deepseek-ai\dsh-desktop\Network\Cookies-journal
建议修复
生成鉴权 cookie 时复用固定 name(例如统一叫 dsh-auth),让 Chromium 的 host + name + path 去重真正生效。
或者在启动时主动清理所有 dsh-auth-*,只保留最新一条。
或者给这条 cookie 设置合理的 Max-Age,让旧条目自然过期。
顺带检查:同一目录下 Trust Tokens 也在累积(本机 36KB),建议一并评估。
参考
社区视频记录了这个现象:https://b23.tv/B3J1KRz
该视频提及阈值约 16KB / 约 72 次启动
All reactions