134 lines
3.4 KiB
Markdown
134 lines
3.4 KiB
Markdown
# 生产环境配置指南
|
||
|
||
各项目在部署到生产环境时,需在项目根目录创建 `.env.local`(或 `.env.production`),并配置以下变量。
|
||
|
||
---
|
||
|
||
## 一、digital(数字游民指南)
|
||
|
||
路径:`digital/.env.local`
|
||
|
||
```bash
|
||
# ========== 根域与 Cookie(跨站 SSO 必填)==========
|
||
ROOT_DOMAIN=hackrobot.cn
|
||
AUTH_COOKIE_DOMAIN=.hackrobot.cn
|
||
|
||
# ========== PocketBase ==========
|
||
NEXT_PUBLIC_POCKETBASE_URL=https://pocketbase.hackrobot.cn
|
||
POCKETBASE_EMAIL=你的PocketBase管理员邮箱
|
||
POCKETBASE_PASSWORD=你的PocketBase管理员密码
|
||
|
||
# ========== 支付(payjsapi)==========
|
||
PAYMENT_API_URL=https://api.hackrobot.cn
|
||
|
||
# ========== 站点 ==========
|
||
NEXT_PUBLIC_SITE_ID=digital
|
||
NEXT_PUBLIC_SITE_URL=https://digital.hackrobot.cn
|
||
```
|
||
|
||
---
|
||
|
||
## 二、cnomadcna(游牧中国)
|
||
|
||
路径:`cnomadcna/.env.local`
|
||
|
||
```bash
|
||
# ========== 根域与 Cookie(跨站 SSO 必填)==========
|
||
ROOT_DOMAIN=hackrobot.cn
|
||
AUTH_COOKIE_DOMAIN=.hackrobot.cn
|
||
|
||
# ========== PocketBase ==========
|
||
NEXT_PUBLIC_POCKETBASE_URL=https://pocketbase.hackrobot.cn
|
||
POCKETBASE_EMAIL=你的PocketBase管理员邮箱
|
||
POCKETBASE_PASSWORD=你的PocketBase管理员密码
|
||
|
||
# ========== 支付(payjsapi)==========
|
||
PAYMENT_API_URL=https://api.hackrobot.cn
|
||
|
||
# ========== 站点 ==========
|
||
NEXT_PUBLIC_SITE_ID=meetup
|
||
NEXT_PUBLIC_SITE_URL=https://meetup.hackrobot.cn
|
||
```
|
||
|
||
---
|
||
|
||
## 三、nomadvip(异度星球)
|
||
|
||
路径:`nomadvip/.env.local`
|
||
|
||
```bash
|
||
# ========== 根域与 Cookie(跨站 SSO 必填)==========
|
||
AUTH_COOKIE_DOMAIN=.hackrobot.cn
|
||
|
||
# ========== PocketBase ==========
|
||
NEXT_PUBLIC_POCKETBASE_URL=https://pocketbase.hackrobot.cn
|
||
|
||
# ========== 支付(payjsapi)==========
|
||
PAYMENT_API_URL=https://api.hackrobot.cn
|
||
NEXT_PUBLIC_API_URL=https://api.hackrobot.cn
|
||
|
||
# ========== 站点 ==========
|
||
NEXT_PUBLIC_SITE_ID=vip
|
||
```
|
||
|
||
---
|
||
|
||
## 四、payjsapi(支付后端)
|
||
|
||
路径:`payjsapi/.env`
|
||
|
||
```bash
|
||
# ========== 回调地址(ZPAY 异步通知必填)==========
|
||
BASE_URL=https://api.hackrobot.cn
|
||
|
||
# ========== 支付渠道 ==========
|
||
PAYMENT_PROVIDER=zpay
|
||
|
||
# ========== ZPAY ==========
|
||
ZPAY_PID=你的ZPAY商户ID
|
||
ZPAY_KEY=你的ZPAY密钥
|
||
|
||
# ========== PocketBase ==========
|
||
PB_URL=https://pocketbase.hackrobot.cn
|
||
PB_ADMIN_EMAIL=你的PocketBase管理员邮箱
|
||
PB_ADMIN_PASSWORD=你的PocketBase管理员密码
|
||
|
||
# ========== Memos(nomadvip 专用,可选)==========
|
||
# MEMOS_API=...
|
||
# MEMOS_TOKEN=...
|
||
```
|
||
|
||
---
|
||
|
||
## 五、变量说明
|
||
|
||
| 变量 | 作用 | 说明 |
|
||
|------|------|------|
|
||
| AUTH_COOKIE_DOMAIN | 跨站 SSO | 设为 `.hackrobot.cn`,三站共享登录态 |
|
||
| POCKETBASE_EMAIL / POCKETBASE_PASSWORD | VIP 查询 | 需 PocketBase 管理员账号,用于 `/api/vip/check` |
|
||
| PAYMENT_API_URL | 支付接口 | payjsapi 部署地址 |
|
||
| NEXT_PUBLIC_SITE_ID | VIP 隔离 | digital / meetup / vip |
|
||
|
||
---
|
||
|
||
## 六、配置步骤
|
||
|
||
1. 在对应项目根目录创建 `.env.local`(Next.js 项目)或 `.env`(payjsapi)
|
||
2. 复制上述示例,按实际域名和账号修改
|
||
3. 重启服务使配置生效
|
||
|
||
```bash
|
||
# 示例:digital 项目
|
||
cd digital
|
||
cp .env.example .env.local # 或手动创建
|
||
# 编辑 .env.local 填入生产配置
|
||
```
|
||
|
||
---
|
||
|
||
## 七、注意事项
|
||
|
||
- `.env.local` 已在 `.gitignore` 中,不会被提交
|
||
- 更换域名时,同时修改 `ROOT_DOMAIN` 和 `AUTH_COOKIE_DOMAIN`(如 `.nomadro.com`)
|
||
- 确保域名解析到正确服务器,nginx 反向代理指向 `https://api.hackrobot.cn` → payjsapi 端口(如 8700)
|