故障排查
从 502、Prisma 到 AI 400/524、Radar 0 分的真实问题
故障排查#
从 502、Prisma 到 AI 400/524、Radar 0 分的真实问题
32. 最常见故障排查#
32.1 网站 502#
pm2 status
pm2 logs graduate-os --lines 200
curl -I http://127.0.0.1:3000/login
判断:
PM2 offline → Node / 构建 / 环境变量
PM2 online 但本机3000失败 → 应用问题
本机3000正常但域名502 → Nginx反代问题
32.2 PM2 报 next start / standalone#
错误思路:
next start
正确:
node .next/standalone/server.js
最终 ecosystem.config.cjs 已修好,不要改回去。
32.3 Cannot find module 'server-only'#
最终包已经修复依赖。
先:
npm ci
npm ls server-only --depth=0
如果使用的不是最终整合包,旧版本才可能需要手工安装。
32.4 后台提示 请先配置 SECRET_ENCRYPTION_KEY#
确认 .env:
SECRET_ENCRYPTION_KEY="64位十六进制字符串"
确认最终 ecosystem.config.cjs 未被旧文件覆盖。
重启:
pm2 restart graduate-os --update-env
pm2 save
32.5 中转站测试显示认证失败,但 Key 确定正确#
先直接强制 IPv4 测试:
curl -4 -i "https://你的中转域名/v1/chat/completions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer 你的测试Key" \
-d '{"model":"你的模型ID","messages":[{"role":"user","content":"Reply only with OK."}],"max_tokens":16}'
如果 IPv4 200,而普通请求 403 Cloudflare,说明是 IPv6/WAF。
最终 PM2 已内置 IPv4-first。
测试 Key 用完后如果曾公开展示,应该作废并换新。
32.6 AI 400 Invalid schema#
最终版已经修复。
若仍出现:
检查是否覆盖了最新 lib/ai/* / lib/papers/*
重新 npm run build
重新 pm2 restart graduate-os --update-env
32.7 AI 524 / timeout#
最终版会尝试精简/分块并最终返回失败状态。
如果仍失败:
中转站拥堵或模型响应过慢
稍后重试
先用短 PDF 验证
32.8 页面一直显示 AI 分析中#
最终版每 3 秒轮询。
如果仍不变:
pm2 logs graduate-os --lines 120
并确认浏览器已加载最新 build(Ctrl+F5)。
32.9 Radar 全部 0 分#
先检查研究档案是否为空:
设置 → 研究档案
研究方向/关键词没有填写时,AI 无法正确判断相关性。
32.10 Radar 结果很多但不相关#
使用更精确组合词,不要单独搜索:
wood
honeycomb
compression
推荐:
"wood honeycomb" "out-of-plane compression"
32.11 PDF 413#
Nginx:
client_max_body_size 50m
.env:
MAX_PDF_SIZE_MB="40"
32.12 登录循环#
确认:
APP_URL="https://你的正式域名"
Nginx 必须传:
proxy_set_header X-Forwarded-Proto $scheme;
SESSION_SECRET 不能每次重启改变。