Files
zjpb.net/INCREMENTAL_DEPLOY.md
Jowe 30b1ef75d6 release: v2.1 - Prompt管理系统、页脚优化、图标修复
新增功能:
- Prompt管理:后台新增Prompt模板管理功能
- 数据库迁移:新增prompt_templates表及默认数据
- 页脚优化:添加ICP备案号(浙ICP备2025154782号-1)和Microsoft Clarity统计
- 图标修复:详情页Material Icons替换为Emoji
- 标签显示:修复编辑页标签名称无法显示的问题

技术改进:
- 添加正则表达式提取标签名称
- 优化页脚样式和链接
- 完善增量部署文档

🚀 Generated with Claude Code
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-30 00:45:39 +08:00

209 lines
4.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ZJPB v2.1 增量部署指南
## 📋 本次更新内容
### 新增功能
1. **Prompt管理系统** - 后台可管理AI提示词模板
2. **详情页图标优化** - Material Icons替换为Emoji
3. **标签显示修复** - 修复编辑页标签名称无法显示问题
4. **页脚优化** - 添加ICP备案号和Microsoft Clarity统计
### 数据库变更
- 新增表:`prompt_templates` Prompt模板表
- 无现有表结构变更,完全兼容旧数据
---
## 🔒 增量部署步骤
### 第一步:备份生产数据库(必须!)
在1Panel中备份数据库
```bash
# 方法1使用1Panel面板
1. 进入1Panel -> 数据库
2. 找到 ai_nav 数据库
3. 点击"备份"按钮
4. 下载备份文件到本地保存
# 方法2使用命令行
mysqldump -h 112.124.42.38 -u ai_nav_user -p ai_nav > backup_$(date +%Y%m%d_%H%M%S).sql
```
### 第二步:停止生产应用
```bash
# SSH登录到生产服务器
ssh root@your-server-ip
# 进入应用目录
cd /www/wwwroot/zjpb
# 停止应用
./manage.sh stop
```
### 第三步:备份现有代码
```bash
# 创建备份目录
cd /www/wwwroot
cp -r zjpb zjpb_backup_$(date +%Y%m%d_%H%M%S)
```
### 第四步:上传新代码
**方法1使用Git推荐**
```bash
# 在本地提交所有修改
git add .
git commit -m "release: v2.1 - Prompt管理系统、页脚优化、图标修复"
git push origin master
# 在服务器上拉取
cd /www/wwwroot/zjpb
git pull origin master
```
**方法2手动上传**
```bash
# 在本地压缩(排除不需要的文件)
zip -r zjpb_v2.1.zip . -x "*.pyc" "*__pycache__*" "*.git*" ".env" "venv/*" "test_*.py" "*.db" "nul"
# 上传到服务器 /www/wwwroot/zjpb_new.zip
# 然后解压覆盖
cd /www/wwwroot/zjpb
unzip -o ../zjpb_new.zip
```
### 第五步:安装新依赖(如有)
```bash
cd /www/wwwroot/zjpb
source venv/bin/activate
pip install -r requirements.txt
```
### 第六步:运行数据库迁移
```bash
# 激活虚拟环境
source venv/bin/activate
# 运行迁移脚本(创建 prompt_templates 表)
python migrate_prompts.py
```
**预期输出:**
```
正在创建 prompt_templates 表...
[OK] 表创建成功
正在初始化默认prompt模板...
[OK] 默认prompt模板初始化成功
- 标签生成: 1
- 主要功能生成: 2
- 详细介绍生成: 3
```
### 第七步:重启应用
```bash
./manage.sh start
```
### 第八步:验证部署
**检查项:**
1. **访问前台首页**
- 检查页脚是否显示ICP备案号
- 检查Clarity统计是否加载F12查看Network
2. **访问详情页**
- 检查图标是否正常显示不是Material Icons文本
3. **登录后台**
- 检查是否有"Prompt管理"菜单
- 进入Prompt管理查看是否有3条默认数据
4. **测试网站编辑**
- 编辑任意网站,检查标签是否正常显示(不是空白蓝框)
5. **测试AI功能**
- 创建新网站,测试"AI生成标签"功能
- 测试"AI生成详细介绍"功能
- 测试"AI生成主要功能"功能
---
## 🔄 回滚方案(如出现问题)
### 快速回滚代码
```bash
cd /www/wwwroot
./zjpb/manage.sh stop
# 删除新版本
rm -rf zjpb
# 恢复备份
mv zjpb_backup_YYYYMMDD_HHMMSS zjpb
# 重启
cd zjpb
./manage.sh start
```
### 恢复数据库
```bash
# 如果新表导致问题,可以删除新表
mysql -h 112.124.42.38 -u ai_nav_user -p ai_nav
# 在MySQL中执行
DROP TABLE IF EXISTS prompt_templates;
```
---
## 📝 注意事项
1.**本次更新不会影响现有数据** - 只是新增表,不修改现有表
2.**完全向后兼容** - 即使不运行迁移脚本,前台也能正常访问
3.**可以随时回滚** - 保留了完整备份
4. ⚠️ **必须备份数据库** - 虽然风险很低,但备份是必须的
5. ⚠️ **检查.env配置** - 确保生产环境的.env配置正确
---
## 🐛 常见问题
### Q1: 迁移脚本报错 "表已存在"
**A:** 说明之前已经运行过迁移,可以跳过此步骤
### Q2: Prompt管理菜单看不到
**A:** 清除浏览器缓存,重新登录后台
### Q3: 标签还是显示不出来
**A:** 清除浏览器缓存强制刷新Ctrl+F5
### Q4: Clarity统计没加载
**A:** 检查网络是否能访问 clarity.ms可能被墙
---
## 📞 技术支持
如遇问题,请检查日志:
```bash
# 查看应用日志
./manage.sh logs
# 查看错误日志
tail -f logs/error.log
```