部署指南

验证与故障排查

上线验证清单与常见问题处理。

上线验证清单

#检查项预期
1首页200,样式与 i18n 正常
2Google 登录OAuth 回调成功
3魔法链接Resend 发信成功,见 Resend 集成
4Stripe Checkout测试卡 4242... 支付成功
5Stripe WebhookDashboard 显示 2xx
6R2 上传管理端可上传并访问
7短链go. 域名正确跳转
8PostHog / GA4Live / Realtime 有事件
9Queues邮件活动任务正常消费

可选自动化:

bash
pnpm posthog:verify:remote

常见问题

本地正常,生产 500

  • 检查 pnpm wrangler secret list 是否缺密钥
  • Cloudflare Dashboard → Workers → Logs 查看堆栈

Google redirect_uri_mismatch

GOOGLE_REDIRECT_URI 必须与 Google Console 中配置的 URI 完全一致(含协议、路径)。

Stripe Webhook 签名失败

STRIPE_WEBHOOK_SECRET 须来自与 endpoint 同一环境(test/live)的 Signing secret。

R2 credentials not configured

生产需设置 R2_ACCESS_KEY_ID 与 R2_SECRET_ACCESS_KEY secret;Worker binding 不等于 S3 API Token。

分析脚本生产不生效

VITE_* 为构建时注入 → 修改后重新 pnpm run deploy。

GA4 管理端无属性

执行 pnpm ga4:grant <PROPERTY_ID>,详见 docs/ga4-admin-spec.md。

安全须知

  • 勿提交 .dev.vars 与第三方密钥到 Git
  • BETTER_AUTH_SECRET 泄露后立即轮换
  • R2 API Token 遵循最小权限,仅授权目标 bucket