Spaces:
Sleeping
Sleeping
File size: 4,249 Bytes
7f22d3c |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 |
# 爬取密码配置说明
## 🔐 密码说明
系统使用环境变量 `CRAWL_PASSWORD` 来配置爬取密码。这个密码用于保护以下功能:
- ✅ URL爬取功能
- ✅ CSV批量导入功能
- ✅ XML Dump上传功能
## 📋 当前状态
### 检查密码配置
运行以下命令检查密码是否已配置:
```bash
# 检查.env文件中是否配置了密码
grep CRAWL_PASSWORD .env
```
### 如果未配置
如果`.env`文件中没有`CRAWL_PASSWORD`配置,系统会:
- 显示错误:"服务器未配置爬取密码,请联系管理员"
- 阻止所有需要密码的操作
## 🔧 如何设置密码
### 方法1: 在.env文件中配置(推荐)
1. **编辑.env文件**
```bash
# 在项目根目录编辑.env文件
nano .env
# 或
vim .env
```
2. **添加密码配置**
```bash
CRAWL_PASSWORD=your-secure-password-here
```
3. **重启服务器**
```bash
# 停止服务器
pkill -f web_server.py
# 重新启动
python3 web_server.py --mode user --port 8000
```
### 方法2: 使用环境变量(临时)
```bash
# 设置环境变量
export CRAWL_PASSWORD=your-secure-password-here
# 启动服务器
python3 web_server.py --mode user --port 8000
```
### 方法3: 复制示例文件
```bash
# 如果.env文件不存在,从示例文件创建
cp .env.example .env
# 然后编辑.env文件,设置密码
nano .env
```
## 🔒 密码安全建议
1. **使用强密码**
- 至少12个字符
- 包含大小写字母、数字、特殊字符
- 例如:`MySecure@Pass123!`
2. **不要分享密码**
- 只在需要访问的用户之间分享
- 不要在代码中硬编码密码
3. **定期更换**
- 建议每3-6个月更换一次
- 如果怀疑泄露,立即更换
4. **保护.env文件**
- `.env`文件已在`.gitignore`中
- 不要将`.env`文件提交到Git仓库
- 确保文件权限正确(仅所有者可读)
## 🎯 使用密码
配置密码后,在前端界面使用以下功能时需要输入密码:
### 1. URL爬取
- 在"URL Injection"区域
- 输入URL和密码
- 点击"Inject"按钮
### 2. CSV批量导入
- 在"Batch Import (Wiki Style)"区域
- 选择CSV文件
- 输入URL前缀(可选)
- 输入密码
- 点击"批量导入"按钮
### 3. Wiki Dump上传
- 在"Wiki Dump Import"区域
- 选择XML dump文件
- 输入Wiki基础URL(可选)
- 输入最大页面数(可选)
- 输入密码
- 点击"导入Dump"按钮
## ❓ 常见问题
### Q1: 密码是什么?
**A**: 密码是您在`.env`文件中配置的`CRAWL_PASSWORD`值。如果您没有配置,系统会提示错误。
### Q2: 如何查看当前配置的密码?
**A**: 密码存储在`.env`文件中。您可以查看:
```bash
grep CRAWL_PASSWORD .env
```
**注意**:出于安全考虑,不要在公共场所显示密码。
### Q3: 忘记密码怎么办?
**A**:
1. 编辑`.env`文件
2. 修改`CRAWL_PASSWORD`的值
3. 重启服务器
### Q4: 如何重置密码?
**A**: 修改`.env`文件中的`CRAWL_PASSWORD`值即可。
### Q5: 密码错误怎么办?
**A**:
1. 检查输入的密码是否正确
2. 检查`.env`文件中的密码配置
3. 确认没有多余的空格
4. 重启服务器使配置生效
## 🔍 验证密码配置
### 检查密码是否已配置
```bash
python3 -c "
import os
from dotenv import load_dotenv
load_dotenv()
password = os.getenv('CRAWL_PASSWORD', '')
if password:
print('✅ 密码已配置')
print(f'密码长度: {len(password)} 字符')
else:
print('❌ 密码未配置')
print('请在.env文件中设置 CRAWL_PASSWORD')
"
```
## 📝 示例配置
`.env`文件示例:
```bash
# 爬取密码配置
CRAWL_PASSWORD=MySecurePassword123!
# 其他配置...
QDRANT_URL=https://your-qdrant-instance.qdrant.io
QDRANT_API_KEY=your-api-key
GOOGLE_API_KEY=your-google-api-key
```
## ⚠️ 安全提醒
1. **不要将密码写入代码**
2. **不要将.env文件提交到Git**
3. **在生产环境使用HTTPS**
4. **限制服务器访问权限**
5. **定期更换密码**
## 📚 相关文档
- `.env.example` - 环境变量示例文件
- `CRAWL_PASSWORD_FEATURE.md` - 密码功能详细说明
- `web_server.py` - 服务器代码(密码验证逻辑)
|