KillerBlog 是一个基于 Django 和 MySQL 的多用户博客平台,支持富文本博客创作、互动评论、搜索筛选以及个性化展示。目标是为个人用户和管理员提供易用、可扩展的博客管理体验。
- 后端框架:Django + Django REST Framework(用于 API 开发)
- 前端:HTML/CSS/JavaScript
- 数据库:MySQL(唯一数据库选型);本地默认启用 SQLite 便于快速运行,部署时请设置
USE_SQLITE=False并配置 MySQL 环境变量 - 缓存:Redis(缓存热门文章、提高访问速度)
- 全文搜索:Elasticsearch 或 Django Haystack
- 文件存储:阿里云 OSS 或 AWS S3(用于用户上传的图片和其他资源)——开发中
- 第三方登录:Google、GitHub 等 OAuth 提供商——开发中
- 支持邮箱、用户名或第三方账号注册/登录(开发中)。
- 支持用户找回/重置密码。
- 权限区分:普通用户与管理员;管理员可删除不良内容、管理评论等。
- 修改昵称、头像、简介等个人资料。
- 修改密码及安全设置。
- 个人主页展示该用户的所有博客文章。
- 创建、编辑、删除文章,包含标题、正文、标签、分类等元数据。
- 支持文章草稿保存与发布流程。
- 富文本编辑:插入图片、视频、代码片段;支持 Markdown 语法。
- 文章显示与排序:首页、分类页按时间或热度排序,支持分页。
- 文章可归属于单一分类(如技术、生活、旅行等)。
- 文章可附加多个标签(如 Python、Django、旅行、心得等)。
- 分类与标签均支持增删改查。
- 文章下的评论发布,支持文本与表情。
- 评论互动:点赞、回复;回复后向被回复用户发送通知。
- 评论审核:管理员可删除不当评论。
- 文章搜索:按标题、内容、标签等关键词。
- 分类筛选与标签筛选。
- 文章排序:按日期或热度排序。
- 支持博客标题、描述、背景图片等个性化设置。
- 提供可选主题样式以切换整体外观(开发中)。
- 文章支持社交分享按钮(微博、微信、Twitter、Facebook 等)(开发中)。
- 用户管理:封禁、删除账号等操作。
- 文章管理:查看、编辑、删除所有用户的文章。
- 评论管理:审核、删除不当评论。
- 系统设置:站点名称、联系方式、SEO 配置等。
- 准备 Python 3.11+ 环境并安装依赖:
pip install -r requirements.txt(如网络限制,可手动安装 Django/DRF 等基础包)。 - 如未准备 MySQL,直接使用默认 SQLite:确保环境变量
USE_SQLITE保持默认值True。 - 运行数据库迁移:
python manage.py migrate。 - 启动开发服务:
python manage.py runserver 0.0.0.0:8000,访问首页即可查看博客界面。 - 如需改用 MySQL:设置
USE_SQLITE=False并提供MYSQL_DATABASE/MYSQL_USER/MYSQL_PASSWORD/MYSQL_HOST/MYSQL_PORT等环境变量后重新运行迁移。