Files
qianyubtcandClaude Fable 5.1 a749e9b989 收银页三种付款方式、内置体验页、反代支持与部署文档
收银页(/pay/{token})
- 三种付款方式按设备自动切换:桌面端扫码(由 RECEIVE_LINK 服务端生成收款二维码,
  不再需要上传图片)、手机端一键唤起币安 App(通用链接)、手动按 UID 转账兜底
- 三种到账确认方式(唯一金额 / 备注码 / 回填订单编号)在网关内始终同时生效

体验页(/demo,DEMO_ENABLED 开启,默认关闭)
- 选择金额档位与币种一键下单;可选择要体验的到账确认方式,收银页引导随之变化,
  结果页显示实际命中方式;按 IP 限流,金额仅限 DEMO_AMOUNTS 档位;根路径跳转 /demo

反向代理
- 新增 TRUST_PROXY:开启后限流按 CF-Connecting-IP / X-Real-IP / X-Forwarded-For 取真实访客 IP

部署
- docs/deploy.md:VPS 选型(须能直连币安 API)、systemd、Caddy、Cloudflare Tunnel
- deploy/ 下提供 bpaygate.service、Caddyfile、cloudflared.yml 模板

其他
- 新增依赖 github.com/skip2/go-qrcode(纯 Go)
- 新增体验页与三模式的测试用例

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-03 10:41:59 +08:00

13 lines
561 B
YAML

# 方案 B(推荐):Cloudflare Tunnel,不开公网端口、不管证书
# cloudflared tunnel login
# cloudflared tunnel create bpaygate
# cloudflared tunnel route dns bpaygate pay.example.com
# sudo cp deploy/cloudflared.yml /etc/cloudflared/config.yml # 改 tunnel 与 credentials-file
# sudo cloudflared service install && sudo systemctl enable --now cloudflared
tunnel: <TUNNEL-ID>
credentials-file: /root/.cloudflared/<TUNNEL-ID>.json
ingress:
- hostname: pay.example.com
service: http://127.0.0.1:8080
- service: http_status:404