second commit
This commit is contained in:
195
ENV_SETUP_GUIDE.md
Normal file
195
ENV_SETUP_GUIDE.md
Normal file
@@ -0,0 +1,195 @@
|
||||
# PromptForge 环境变量配置指南
|
||||
|
||||
本指南将帮助您正确配置 PromptForge 的环境变量。
|
||||
|
||||
## 📋 配置步骤
|
||||
|
||||
### 1. 创建环境变量文件
|
||||
|
||||
在项目根目录创建 `.env.local` 文件:
|
||||
|
||||
```bash
|
||||
# Windows
|
||||
copy .env.example .env.local
|
||||
|
||||
# macOS/Linux
|
||||
cp .env.example .env.local
|
||||
```
|
||||
|
||||
### 2. 配置环境变量
|
||||
|
||||
编辑 `.env.local` 文件,填入以下配置:
|
||||
|
||||
```env
|
||||
# ==================== 数据库配置 ====================
|
||||
# 本地 MySQL 数据库连接字符串
|
||||
DATABASE_URL=mysql://root:your_password@localhost:3306/promptforge
|
||||
|
||||
# 腾讯云数据库连接字符串(可选)
|
||||
TENCENT_DATABASE_URL=mysql://root:!Rjb12191@gz-cynosdbmysql-grp-d26pzce5.sql.tencentcdb.com:24936/pronode_db?charset=utf8mb4
|
||||
|
||||
# ==================== API 密钥配置 ====================
|
||||
# OpenAI API 密钥
|
||||
OPENAI_API_KEY=your_openai_api_key_here
|
||||
|
||||
# Anthropic API 密钥
|
||||
ANTHROPIC_API_KEY=your_anthropic_api_key_here
|
||||
|
||||
# DeepSeek API 密钥
|
||||
DEEPSEEK_API_KEY=sk-fdf7cc1c73504e628ec0119b7e11b8cc
|
||||
|
||||
# ==================== NextAuth 认证配置 ====================
|
||||
# NextAuth 密钥(用于加密会话)
|
||||
NEXTAUTH_SECRET=your_secret_key_here_make_it_long_and_random
|
||||
|
||||
# NextAuth URL
|
||||
NEXTAUTH_URL=http://localhost:3000
|
||||
|
||||
# ==================== 应用配置 ====================
|
||||
# 应用端口
|
||||
PORT=3000
|
||||
|
||||
# 环境模式
|
||||
NODE_ENV=development
|
||||
```
|
||||
|
||||
## 🔑 API 密钥获取指南
|
||||
|
||||
### OpenAI API 密钥
|
||||
|
||||
1. 访问 [OpenAI Platform](https://platform.openai.com/)
|
||||
2. 注册账户并登录
|
||||
3. 进入 [API Keys](https://platform.openai.com/api-keys) 页面
|
||||
4. 点击 "Create new secret key"
|
||||
5. 复制生成的密钥
|
||||
6. 将密钥添加到 `.env.local` 文件
|
||||
|
||||
### Anthropic API 密钥
|
||||
|
||||
1. 访问 [Anthropic Console](https://console.anthropic.com/)
|
||||
2. 注册账户并登录
|
||||
3. 进入 [API Keys](https://console.anthropic.com/account/keys) 页面
|
||||
4. 点击 "Create Key"
|
||||
5. 复制生成的密钥
|
||||
6. 将密钥添加到 `.env.local` 文件
|
||||
|
||||
### DeepSeek API 密钥
|
||||
|
||||
1. 访问 [DeepSeek Platform](https://platform.deepseek.com/)
|
||||
2. 注册账户并登录
|
||||
3. 进入 API Keys 页面
|
||||
4. 创建新的 API 密钥
|
||||
5. 复制密钥到 `.env.local` 文件
|
||||
|
||||
## 🔐 安全配置
|
||||
|
||||
### 生成安全的密钥
|
||||
|
||||
```bash
|
||||
# 生成 NextAuth 密钥
|
||||
openssl rand -base64 32
|
||||
|
||||
# 或使用 Node.js
|
||||
node -e "console.log(require('crypto').randomBytes(32).toString('base64'))"
|
||||
```
|
||||
|
||||
### 数据库密码设置
|
||||
|
||||
```sql
|
||||
-- 在 MySQL 中设置强密码
|
||||
ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_strong_password_here';
|
||||
FLUSH PRIVILEGES;
|
||||
```
|
||||
|
||||
## ✅ 配置验证
|
||||
|
||||
### 1. 验证环境变量
|
||||
|
||||
```bash
|
||||
# 检查环境变量是否正确加载
|
||||
node -e "
|
||||
console.log('DATABASE_URL:', process.env.DATABASE_URL ? '已设置' : '未设置');
|
||||
console.log('NEXTAUTH_SECRET:', process.env.NEXTAUTH_SECRET ? '已设置' : '未设置');
|
||||
console.log('OPENAI_API_KEY:', process.env.OPENAI_API_KEY ? '已设置' : '未设置');
|
||||
"
|
||||
```
|
||||
|
||||
### 2. 测试数据库连接
|
||||
|
||||
```bash
|
||||
node test-db-connection.js
|
||||
```
|
||||
|
||||
### 3. 测试 API 连接
|
||||
|
||||
```bash
|
||||
node test-deepseek-api.js
|
||||
```
|
||||
|
||||
## 🚨 安全注意事项
|
||||
|
||||
### 1. 文件安全
|
||||
- 确保 `.env.local` 文件不会被提交到版本控制系统
|
||||
- 在生产环境中使用环境变量而不是文件
|
||||
- 定期备份重要的配置信息
|
||||
|
||||
### 2. 密钥管理
|
||||
- 使用强密码和随机生成的密钥
|
||||
- 定期更新 API 密钥
|
||||
- 不要在代码中硬编码密钥
|
||||
- 限制 API 密钥的权限范围
|
||||
|
||||
### 3. 数据库安全
|
||||
- 使用强密码
|
||||
- 限制数据库访问权限
|
||||
- 定期备份数据库
|
||||
- 启用 SSL 连接(生产环境)
|
||||
|
||||
## 🔧 常见配置问题
|
||||
|
||||
### 1. 环境变量未生效
|
||||
|
||||
**问题**: 修改 `.env.local` 后应用没有读取到新配置
|
||||
|
||||
**解决方案**:
|
||||
```bash
|
||||
# 重启开发服务器
|
||||
npm run dev
|
||||
|
||||
# 或清除缓存
|
||||
rm -rf .next
|
||||
npm run dev
|
||||
```
|
||||
|
||||
### 2. 数据库连接失败
|
||||
|
||||
**问题**: 无法连接到数据库
|
||||
|
||||
**检查项目**:
|
||||
- 数据库服务是否启动
|
||||
- 连接字符串是否正确
|
||||
- 用户名密码是否正确
|
||||
- 数据库是否存在
|
||||
|
||||
### 3. API 调用失败
|
||||
|
||||
**问题**: AI 模型 API 调用失败
|
||||
|
||||
**检查项目**:
|
||||
- API 密钥是否正确
|
||||
- 网络连接是否正常
|
||||
- API 配额是否充足
|
||||
- 请求格式是否正确
|
||||
|
||||
## 📞 获取帮助
|
||||
|
||||
如果在配置过程中遇到问题:
|
||||
|
||||
1. 查看 [常见问题](#常见配置问题) 部分
|
||||
2. 检查 [安装指南](../INSTALLATION_GUIDE.md)
|
||||
3. 提交 [GitHub Issue](https://github.com/your-username/promptforge/issues)
|
||||
4. 联系技术支持团队
|
||||
|
||||
---
|
||||
|
||||
**提示**: 配置完成后,请重新启动开发服务器以确保所有配置生效。
|
||||
Reference in New Issue
Block a user