Commit 168fc75
committed
fix(leaderboard): UA 改回 InvolutionHell-SSR 让 CF Custom Rule 真正匹配
之前误判
昨天看到 build 拿 403 + "Just a moment..." 时,第一反应是"UA 含 build 关键词
触发 CF UA 启发式",于是把 UA 改成 Chrome 伪装。错了。
实际 CF 配置
api.involutionhell.com 上有一条 Custom Rule:
(http.host eq "api.involutionhell.com"
and http.user_agent contains "InvolutionHell-SSR")
→ Skip: Bot Fight Mode / Browser Integrity Check / Managed Rules
也就是说 CF **明确依赖 UA token "InvolutionHell-SSR"** 来识别"自己人"放行。
Chrome 伪装恰恰把这个 token 拿掉,规则不匹配,Vercel runner 仍然按 IP
信誉被 Bot Fight 拦下回 403。
本 PR
脚本 UA 改成
"InvolutionHell-SSR/1.0 (build; generate-leaderboard.mjs; +https://involutionhell.com)"
带上 CF 规则要求的 token。本机实测 200 + 21 条数据正常返回。
效果
合并后 prod build → CF 规则匹配 Skip → 拉到真实数据 → site-leaderboard.json
回到 21 条 → 首页 Top Rank / /rank contributors 恢复显示。1 parent 1e8084b commit 168fc75
1 file changed
Lines changed: 8 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
103 | 103 | | |
104 | 104 | | |
105 | 105 | | |
106 | | - | |
107 | | - | |
108 | | - | |
109 | | - | |
110 | | - | |
111 | | - | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
112 | 112 | | |
113 | | - | |
114 | | - | |
| 113 | + | |
| 114 | + | |
115 | 115 | | |
116 | 116 | | |
117 | 117 | | |
| |||
0 commit comments