C4-log 轻量系统
简洁、轻量化、带审核权限的个人Log平台📌 系统简介
C4-log 是基于 Flask + SQLite 开发的轻量化Log管理系统,专为小型团队、个人记录日常Log、学习笔记打造。 系统区分普通用户与管理员权限,新增邮箱验证码注册、Log审核机制、内容搜索、用户管理等完整功能,界面采用 Bootstrap5 响应式布局,电脑、手机均可正常浏览。
系统定位为「轻量自用+小团队协作」,无需复杂的服务器配置,本地即可运行,也可部署至云服务器对外访问;无商业化诉求,纯开源自用导向,代码结构清晰,便于二次开发扩展功能。
✨ 核心功能
用户模块
- 邮箱验证码注册(SMTP邮件发送)
- 用户名密码登录、退出登录
- 管理员统一管理全部注册用户
- 密码加密存储,数据安全
- 登录状态持久化(7天免登)
博客Log模块
- 发布、查看、编辑、删除Log
- Log置顶/取消置顶功能
- 关键词全文检索(标题+内容)
- 分页浏览Log列表
- Log审核状态可视化标签
审核权限机制
- 新Log默认待审核,游客不可见
- 管理员审核通过后全站可见
- 普通用户仅可修改自己未审核Log
- 管理员可编辑/删除全部Log
- 支持批量审核/驳回Log(管理员)
界面标识区分
- 置顶、待审核、管理员发布标签
- 权限按钮自动隐藏,防止越权操作
- 响应式卡片布局,适配移动端
- 内置使用帮助页面
- FAQ折叠面板,精简页面展示
🛠 开发技术栈
- 后端框架:Python Flask(蓝图模块化拆分)
- 数据库:SQLite 轻量本地数据库,无需额外部署
- 前端:Bootstrap5 + Bootstrap Icons
- 邮件服务:SMTP SSL 发送邮箱验证码(QQ邮箱)
- 安全:PBKDF2 密码哈希加密、后端权限校验
- 部署:支持本地运行、云服务器(Nginx + Gunicorn)部署
- 开发规范:代码注释全覆盖,功能模块解耦,便于维护
🚀 部署说明
本地部署(开发调试)
- 环境要求:Python 3.8+、pip 包管理工具
- 安装依赖:
pip install flask flask-sqlalchemy pycryptodome smtplib - 配置邮箱:修改
config.py中的SMTP服务器、邮箱账号、授权码 - 启动项目:执行
run.py,访问http://127.0.0.1:5000
生产环境部署(云服务器)
- 安装Gunicorn:
pip install gunicorn - 配置Nginx:反向代理至Gunicorn端口
- 启动命令:
gunicorn -w 4 -b 127.0.0.1:8000 run:app - 数据备份:定期备份SQLite数据库文件(.db)
👥 角色权限说明
| 角色 | 可见内容 | 操作权限 |
|---|---|---|
| 游客(未登录) | 仅已审核公开Log | 浏览、搜索;无法发布/编辑/删除 |
| 普通登录用户 | 全部已审核Log(含管理员Log) | 发布Log;仅可修改删除自己待审核Log |
| 管理员 | 所有Log(待审核+已审核) | 审核、置顶、管理用户、编辑删除任意Log |
📝 更新日志
- 完成核心功能:注册、登录、发布/审核Log
- 实现基础权限控制(普通用户/管理员)
- 适配移动端响应式布局
- 新增Log搜索功能(关键词匹配标题/内容)
- 优化邮箱验证码发送逻辑(防重复发送、有效期限制)
- 补充使用帮助页面、FAQ模块
- 修复权限越权访问漏洞(后端二次校验)
📞 联系方式
- 技术支持邮箱:c4-log@qq.com
- GitHub仓库:https://github.com/C4-CU3/C4-Log
- 问题反馈:可在系统首页留言区提交,或发送邮件说明问题详情
📋 开发说明
本系统为个人项目,无复杂第三方依赖,开箱即用。 所有权限校验同时做前端隐藏+后端接口双重拦截,避免手动输入地址越权操作。 邮件验证码功能支持本地调试,更换邮箱SMTP配置即可正常收发验证码。
系统后续计划迭代功能:密码自助找回、Log分类标签、富文本编辑器、数据导出、多端同步等。欢迎提交Issue或PR参与开发。