Files
zjpb.net/docs/archive/DEPLOY_CHECKLIST.md
Jowe 939717fa57 feat: v2.6.0 - API安全优化和文档整合
## 核心优化
- 移除详情页自动调用博查API的逻辑,改为按需加载
- 添加基于IP的频率限制(每小时3次)
- 实现验证码防护机制(超过阈值后要求验证)
- 新增频率限制工具类 utils/rate_limiter.py

## 成本控制
- API调用减少约90%+(只在用户点击时调用)
- 防止恶意滥用和攻击
- 可配置的频率限制和验证码策略

## 文档整合
- 创建 docs/ 目录结构
- 归档历史版本文档到 docs/archive/
- 移动部署文档到 docs/deployment/
- 添加文档索引 docs/README.md

## 技术变更
- 新增依赖: Flask-Limiter==3.5.0
- 修改: app.py (移除自动调用,新增API端点)
- 修改: templates/detail_new.html (按需加载UI)
- 新增: utils/rate_limiter.py (频率限制和验证码)
- 新增: docs/archive/DEVELOP_v2.6.0_API_SECURITY.md

## 部署说明
1. pip install Flask-Limiter==3.5.0
2. 重启应用
3. 无需数据库迁移

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-06 15:54:13 +08:00

3.1 KiB
Raw Permalink Blame History

📦 1Panel部署打包清单

部署前请确保以下文件都已准备好:

必需文件

应用文件

  • app.py - 主应用文件
  • wsgi.py - WSGI入口生产环境
  • config.py - 配置文件
  • models.py - 数据模型
  • init_db.py - 数据库初始化脚本
  • requirements.txt - Python依赖列表

配置文件

  • gunicorn_config.py - Gunicorn配置
  • .env.example - 环境变量模板
  • .env - 生产环境变量(需在服务器上创建)

部署脚本

  • deploy.sh - 一键部署脚本
  • manage.sh - 应用管理脚本

文档

  • DEPLOYMENT.md - 完整部署文档
  • QUICK_DEPLOY.md - 快速部署指南
  • README.md - 项目说明

目录结构

zjpb/
├── static/           # 静态文件
│   ├── css/
│   ├── js/
│   └── uploads/      # 上传文件目录
├── templates/        # 模板文件
│   ├── admin/
│   └── *.html
├── utils/            # 工具类
│   ├── website_fetcher.py
│   ├── tag_generator.py
│   └── bookmark_parser.py
├── migrations/       # 数据库迁移脚本
├── logs/            # 日志目录(自动创建)
└── venv/            # 虚拟环境(服务器上创建)

🚫 排除文件(不要上传到服务器)

  • __pycache__/ - Python缓存
  • *.pyc - 编译的Python文件
  • .git/ - Git仓库
  • .env - 本地环境变量
  • venv/ env/ - 虚拟环境
  • test_*.py - 测试文件
  • *.log - 日志文件
  • logs/ - 日志目录
  • static/uploads/* - 上传的文件

📋 部署前检查清单

本地准备

  • 更新 requirements.txt
  • 测试应用运行正常
  • 准备 .env.example 模板
  • 压缩项目文件

服务器准备

  • 1Panel已安装
  • MySQL数据库已创建
  • 域名已解析(可选)
  • SSH访问权限

部署步骤

  • 上传项目文件到服务器
  • 解压并设置目录权限
  • 执行 deploy.sh 脚本
  • 配置 .env 文件
  • 初始化数据库
  • 在1Panel中创建网站反向代理
  • 启动应用
  • 配置SSL证书可选

部署后验证

  • 前台页面访问正常
  • 后台登录成功
  • 修改默认管理员密码
  • 测试网站添加功能
  • 测试标签创建功能
  • 测试图片上传功能

🔐 安全检查

  • 修改默认管理员密码
  • 设置强密码的 SECRET_KEY
  • 配置 .env 权限chmod 600
  • 启用 SSL/HTTPS
  • 配置防火墙规则
  • 定期备份数据库

📝 压缩命令

Windows PowerShell:

Compress-Archive -Path * -DestinationPath zjpb.zip -Force

Linux/Mac:

zip -r zjpb.zip . -x "*.pyc" "*__pycache__*" "*.git*" ".env" "venv/*" "test_*.py" "logs/*"

🎯 快速部署(服务器上)

# 1. 上传并解压
cd /www/wwwroot/zjpb
unzip zjpb.zip

# 2. 一键部署
chmod +x deploy.sh
./deploy.sh

# 3. 配置环境变量
nano .env

# 4. 启动应用
chmod +x manage.sh
./manage.sh start

详细步骤请参考:DEPLOYMENT.md