创建 frontend/.env.local 文件,内容如下:
# 后端Workers URL (必需)
VITE_BACKEND_URL=https://your-worker-name.your-subdomain.workers.dev
# 可选:API基础URL (如果设置,优先级高于VITE_BACKEND_URL)
# VITE_API_BASE_URL=https://your-custom-api-domain.com在Cloudflare Dashboard中配置以下环境变量:
JWT_SECRET=your-super-secret-jwt-key-at-least-32-characters# 允许的前端域名列表(逗号分隔)
ALLOWED_ORIGINS=https://your-frontend-domain.com,https://another-domain.com
# 基础URL
BASE_URL=https://your-worker-name.your-subdomain.workers.dev
# 日志级别
LOG_LEVEL=info# 切换到后端目录
cd backend
# 设置JWT密钥(使用随机生成的安全密钥)
echo "memos-cloudflare-jwt-secret-2025-$(openssl rand -hex 16)" | npx wrangler secret put JWT_SECRET
# 设置允许的前端域名(替换为您的实际域名)
echo "https://your-frontend-domain.com,https://memos-cloudflare.pages.dev" | npx wrangler secret put ALLOWED_ORIGINS✅ JWT_SECRET - 已设置随机生成的安全密钥
✅ ALLOWED_ORIGINS - 已设置允许的前端域名
✅ BASE_URL - 已更新为正确的Worker URL
✅ R2 Bucket - 已绑定 memos-assets 存储桶
✅ D1 Database - 已绑定 memos 数据库
# 部署后端
cd backend && npm run deploy
# 构建前端
cd frontend && npm run build- 不要在代码中硬编码任何域名或密钥
- 不要将 .env.local 文件提交到Git
- 确保JWT_SECRET足够复杂和随机
- 定期更换JWT密钥