在线阅读系统
管理员后台 - 首页
管理员后台 - 主页
管理员后台 - 书籍编辑预览
管理员后台 - 广告管理
管理员后台 - 大屏看板
用户端 - 书籍列表界面
用户端 - 阅读界面
用户端 - 个性化设置
用户端 - 书架与阅读记录
项目简介
在线阅读系统是一个功能完善的数字化阅读平台,采用前后端分离架构开发,为读者和管理员提供全方位的服务。
核心特点:
- 双角色系统:管理员与普通用户各具专属功能界面
- 多格式支持:专为EPUB电子书优化,提供流畅阅读体验
- 商业化功能:集成支付系统与广告变现能力
- 数据驱动:配备可视化分析看板辅助运营决策
- 跨平台兼容:适配移动端与PC端各种设备
技术亮点:
- 混合数据库架构:MySQL处理结构化数据 + MongoDB存储书籍内容
- 现代化技术栈:Flask轻量级后端 + UniApp跨平台前端
- 生产级部署:Docker容器化 + Nginx反向代理
- 完整支付集成:支付宝沙箱环境支付流程
快速启动指南
后端服务部署
开发模式运行:
克隆项目仓库
cd online-reading-system/backend-python
安装依赖
pip install -r requirements.txt
配置环境
- 修改
config.py
中的数据库连接参数 - 配置
payparms.py
中的支付参数
- 修改
启动服务
flask run --host=0.0.0.0 --port=5000
Docker生产部署:
docker build -t online-reading-system-backend .
docker run -d \
-p 5000:5000 \
-e SERVER_URL="http://your-domain.com/api" \
-e MONGO_URL="mongodb://host.docker.internal:27017/reading" \
-e SQLALCHEMY_DATABASE_URI="mysql+pymysql://user:password@host.docker.internal:3306/dbname" \
-e REDIS_URL="redis://host.docker.internal:6379/0" \
--name reading-backend \
reading-server
前端服务部署
管理员端
cd admin-end npm install npm run build
用户端
cd user-end npm install npm run build
通过Nginx配置反向代理,建议配置:
location /api { proxy_pass http://backend:5000; proxy_set_header Host $host; } location /admin { alias /path/to/admin/dist; try_files $uri $uri/ /admin/index.html; } location / { alias /path/to/user/dist; try_files $uri $uri/ /index.html; }
数据库准备
MySQL:
CREATE DATABASE reading CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
MongoDB:
use reading db.createCollection("book_contents")
注意事项
- 首次运行需通过
batchhandelepub.py
导入EPUB书籍 - 支付功能需配置支付宝沙箱账号
- 生产环境务必修改默认密钥和密码
- 建议使用HTTPS确保数据传输安全
系统现已支持完整的电子书阅读、用户管理、付费阅读和数据分析功能,可根据实际需求进行二次开发或功能扩展。