项目简介
本项目是基于Go语言和Vue.js构建的博客管理系统,为用户提供一个便于管理、部署与二次开发的博客平台。项目结合了Gin Web框架、Xorm数据库操作库以及Vue.js前端框架,实现文章管理、页面管理、分类管理等核心功能,还支持QQ扫码登录,后续计划集成七牛云进行图片存储。
项目的主要特性和功能
- 文章管理:支持文章添加、编辑、删除和查看。
- 页面管理:支持页面创建、编辑、删除和查看。
- 分类管理:支持文章分类创建、编辑、删除和查看。
- 标签管理:支持标签创建、编辑、删除和查看。
- 系统设置:支持全局设置,如网站标题、描述、Logo等。
- QQ扫码登录:支持通过QQ扫码进行用户登录。
- 定时任务管理:支持定时任务执行,如检查OpenAI API使用情况等。
- 用户认证:提供用户登录、注销、获取验证码等功能。
安装使用步骤
1. 环境准备
- 确保已安装Go语言环境(版本1.16以上)。
- 确保已安装Node.js环境(用于前端开发)。
2. 代码下载
bash
3. 数据库配置
- 修改
conf/conf.toml
文件中的数据库连接信息。 - 还原
data
目录下的db.sql
数据库文件。
4. 安装依赖
- 在项目根目录下运行以下命令安装Go依赖:
bash go mod tidy
- 进入前端目录,安装前端依赖:
bash npm install
5. 运行项目
- 启动后端服务:
bash go run main.go
- 启动前端开发服务器:
bash npm run serve
6. 访问项目
- 后端服务默认监听在
http://127.0.0.1:8085/
。 - 前端开发服务器默认监听在
http://127.0.0.1:8080/
。
7. 部署项目
- 编译可执行文件:
bash go build
- 对于生产环境,建议使用以下命令编译不带日志和Swagger文档的版本:
bash go build -tags=prod
- 在Linux服务器上部署时,可以使用以下命令后台运行:
bash nohup ./blog >> nohup.log 2>&1 &
8. 其他配置
- QQ扫码登录:需在QQ互联平台申请应用,并在
conf/conf.toml
中配置web_appid
和web_secret
。
注意事项
- 数据库自带文章内容请在部署前删除。
- 生产环境中建议使用Nginx或Caddy等Web服务器记录日志。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】