# sidifensen_blog **Repository Path**: binwin1/sidifensen_blog ## Basic Information - **Project Name**: sidifensen_blog - **Description**: 这是我自己从零到一写的博客/论坛项目 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: main - **Homepage**: https://sidifensen.com/ - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 4 - **Created**: 2025-10-17 - **Last Updated**: 2025-10-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

🚀 Sidifensen Blog

现代化个人博客/论坛系统 | 前后端分离架构

![Java](https://img.shields.io/badge/Java-21-orange.svg) ![Spring Boot](https://img.shields.io/badge/Spring%20Boot-3.4.0-brightgreen.svg) ![Vue.js](https://img.shields.io/badge/Vue.js-3.5.13-4FC08D.svg) ![Element Plus](https://img.shields.io/badge/Element%20Plus-2.10.2-409EFF.svg)

功能特性技术架构快速开始部署指南项目结构

---
**🌐 官网地址**: [https://www.sidifensen.com](https://www.sidifensen.com) **🔧 后台管理**: [https://admin.sidifensen.com](https://admin.sidifensen.com) **📦 Gitee 仓库**: [https://gitee.com/sidifensen/sidifensen_blog](https://gitee.com/sidifensen/sidifensen_blog) **💻 GitHub 仓库**: [https://github.com/sidifensen/sidifensen_blog](https://github.com/sidifensen/sidifensen_blog)
--- ## 📋 项目概述 **Sidifensen Blog** 是一个功能完整的现代化个人博客/论坛系统,采用前后端分离架构设计。系统包含用户端展示界面和管理端后台系统,提供了从内容创作到用户交互的完整博客解决方案。 ### ✨ 项目亮点 - 🎨 **现代化 UI**: 基于 Element Plus 的精美界面设计 - 🔒 **安全可靠**: Spring Security + JWT 认证,阿里云内容安全检测 - ⚡ **高性能**: Redis 缓存 + RabbitMQ 异步处理 - 🤖 **AI 赋能**: DeepSeek API 智能提取文章摘要,提升创作效率 - 📱 **响应式设计**: 完美适配桌面端和移动端 - 🔧 **易于扩展**: 模块化架构,支持功能定制 - 🚀 **开箱即用**: Docker 一键部署,快速上线 ## 🛠️ 技术架构
### 🔧 后端技术栈 - **核心框架**: Spring Boot 3.4.0 - **开发语言**: Java 21 - **安全框架**: Spring Security 6.4.1 + JWT - **数据库**: MySQL 8.1.0 - **ORM 框架**: MyBatis-Plus 3.5.14 - **缓存中间件**: Redis 3.4.0 - **消息队列**: RabbitMQ 3.4.0 - **文件存储**: MinIO 8.3.6 - **模板引擎**: Thymeleaf 3.4.0 - **邮件服务**: Spring Mail - **第三方登录**: JustAuth 1.16.7 - **内容安全**: 阿里云图片内容检测 2.0.6 - **AI 能力**: Spring AI 1.0.0 + DeepSeek API - **监控运维**: Spring Actuator - **切面编程**: Spring AOP - **工具库**: - Lombok 1.18.38 (代码简化) - Hutool 5.8.38 (Java 工具库) - FastJSON 2.0.50 (JSON 处理) - Easy-Captcha 1.6.2 (验证码生成) ### 🎨 前端技术栈 #### 用户端 - **核心框架**: Vue 3.5.13 - **构建工具**: Vite 6.2.4 - **UI 组件库**: Element Plus 2.10.2 - **状态管理**: Pinia 3.0.1 + 持久化插件 - **路由管理**: Vue Router 4.5.0 - **HTTP 客户端**: Axios 1.10.0 - **样式预处理**: Sass Embedded 1.89.2 - **图标库**: Element Plus Icons 2.3.1 + SVG Icons - **富文本编辑器**: AiEditor 1.4.0 - **工具库**: VueUse 13.5.0 #### 管理端(额外功能) - **数据可视化**: ECharts 5.6.0 - **Excel 处理**: XLSX 0.18.5 - **文件保存**: FileSaver 2.0.5 #### 开发工具 - **代码混淆**: Vite Plugin Obfuscator - **安全防护**: Disable DevTool 0.3.9 - **自动导入**: unplugin-auto-import + unplugin-vue-components - **开发调试**: Vue DevTools 7.7.2
### 🏗️ 架构特点 #### 📐 架构设计 - **前后端分离**: 前后端完全解耦,独立开发和部署 - **RESTful API**: 统一的接口设计和 `Result` 响应格式 - **模块化设计**: 按业务功能拆分,支持独立扩展 #### ⚡ 性能优化 - **Redis 缓存**: 热点数据缓存,显著提升响应速度 - **RabbitMQ 异步**: 消息队列处理耗时任务,提高系统吞吐量 - **MyBatis-Plus**: Lambda 表达式构建查询,类型安全高效 - **定时任务**: 热门文章统计、数据清理等后台处理 #### 🔒 安全防护 - **Spring Security + JWT**: 无状态认证和 RBAC 权限控制 - **多重防护**: SQL 注入防护 + XSS 过滤 + 敏感信息加密 - **内容审核**: 阿里云内容安全服务自动审核 - **访问日志**: 登录日志、访问日志完整追踪 #### ☁️ 存储与部署 - **MinIO 对象存储**: 分布式文件存储,支持大容量管理 - **Docker 容器化**: 一键部署所有服务,环境一致性保障 - **多环境配置**: 开发、测试、生产环境分离 - **跨平台支持**: Linux、Windows、macOS 全平台部署 #### 🎨 前端工程化 - **Vue 3 + Vite**: Composition API 开发,快速构建和热更新 - **Pinia 状态管理**: 全局状态管理和持久化 - **响应式设计**: 完美适配桌面端、平板和移动端 ## 📁 项目结构 ``` sidifensen_blog/ │ ├── README.md # 📖 项目说明文档 │ ├── script/ # 📜 部署脚本和配置 │ ├── deploy/ # 自动化部署脚本 │ │ ├── deploy.sh # 一键部署脚本 │ │ └── deploy.md # 部署文档 │ ├── ssl/ # HTTPS SSL 证书配置 │ │ ├── docker-compose-apps.yml # SSL 应用编排 │ │ ├── docker-compose-backend.yml # 后端 SSL 配置 │ │ ├── docker-compose-frontend.yml # 前端 SSL 配置 │ │ ├── docker-compose-services.yml # 服务 SSL 配置 │ │ ├── docker-compose-ssl.yml # SSL 版本主编排文件 │ │ ├── env.example # SSL 环境变量示例 │ │ ├── nginx-ssl.conf # Nginx SSL 配置 │ │ ├── README-ssl.md # SSL 部署说明 │ │ ├── ssl.sh # SSL 证书申请脚本 │ │ └── start.sh # SSL 版本启动脚本 │ ├── docker-compose-apps.yml # 应用编排 (前后端) │ ├── docker-compose-service.yml # 基础服务编排 (MySQL/Redis/RabbitMQ/MinIO) │ ├── docker-compose.yml # Docker Compose 主编排文件 │ ├── env.example # 环境变量配置模板 │ ├── nginx.conf # Nginx 反向代理配置 │ ├── README-Docker.md # Docker 部署详细说明 │ ├── start.bat # Windows 启动脚本 │ └── start.sh # Linux/Mac 启动脚本 │ ├── sidifensen_blog_backend/ # 🔧 后端服务 (Spring Boot 3.4.0 + Java 21) │ ├── src/ │ │ ├── main/ │ │ │ ├── java/com/sidifensen/ │ │ │ │ ├── aspect/ # AOP 切面 (日志、权限等) │ │ │ │ ├── config/ # 配置类 │ │ │ │ ├── controller/ # REST API 控制器层 │ │ │ │ ├── domain/ # 数据模型层 │ │ │ │ │ ├── constants/ # 常量类 │ │ │ │ │ ├── dto/ # 数据传输对象 (请求参数) │ │ │ │ │ ├── entity/ # 实体类 (对应数据库表) │ │ │ │ │ ├── enums/ # 枚举类 │ │ │ │ │ ├── result/ # 统一响应结果封装 │ │ │ │ │ └── vo/ # 视图对象 (响应数据) │ │ │ │ ├── exception/ # 全局异常处理 │ │ │ │ ├── handler/ # 处理器 │ │ │ │ ├── mapper/ # MyBatis-Plus 数据访问层 │ │ │ │ ├── minio/ # MinIO 对象存储配置 │ │ │ │ ├── rabbitmq/ # RabbitMQ 消息队列配置 │ │ │ │ ├── redis/ # Redis 缓存配置 │ │ │ │ ├── security/ # Spring Security + JWT 配置 │ │ │ │ ├── service/ # 业务逻辑服务层 │ │ │ │ │ └── impl/ # 服务实现类 │ │ │ │ ├── task/ # 定时任务 │ │ │ │ └── utils/ # 通用工具类 │ │ │ └── resources/ │ │ │ ├── mapper/ # MyBatis XML 映射文件 │ │ │ ├── templates/ # Thymeleaf 邮件模板 │ │ │ ├── application.yaml # 应用主配置文件 │ │ │ └── logback-spring.xml # 日志配置 │ │ └── test/ # 测试代码 │ ├── target/ # Maven 编译输出目录 │ ├── docker.sh # Docker 部署脚本 │ ├── Dockerfile # Docker 镜像构建文件 │ └── pom.xml # Maven 项目配置文件 │ ├── sidifensen_blog_frontend/ # 🎨 前端应用 (Vue 3 + Vite) │ │ │ ├── sidifensen_admin/ # 🔧 管理端后台 │ │ ├── dist/ # 构建产物 │ │ ├── node_modules/ # 依赖包 │ │ ├── public/ # 公共资源 │ │ │ └── favicon.ico # 网站图标 │ │ ├── src/ │ │ │ ├── api/ # API 接口定义 │ │ │ ├── assets/ # 静态资源 │ │ │ │ ├── font/ # 字体文件 │ │ │ │ ├── scss/ # 全局样式 │ │ │ │ └── svg/ # SVG 图标 │ │ │ ├── components/ # 可复用组件 │ │ │ │ ├── 404.vue # 404 页面 │ │ │ │ ├── Dark.vue # 暗黑模式切换 │ │ │ │ ├── Layout.vue # 后台布局 │ │ │ │ ├── ProjectLinks.vue # 项目链接 │ │ │ │ └── SvgIcon.vue # SVG 图标 │ │ │ ├── router/ # Vue Router 路由配置 │ │ │ ├── stores/ # Pinia 状态管理 │ │ │ │ ├── darkStore.js # 暗黑模式状态 │ │ │ │ └── userStore.js # 用户状态 │ │ │ ├── utils/ # 工具函数 │ │ │ ├── views/ # 页面组件 │ │ │ │ ├── account/ # 账户设置 │ │ │ │ ├── article/ # 文章管理 │ │ │ │ ├── column/ # 专栏管理 │ │ │ │ ├── comment/ # 评论管理 │ │ │ │ ├── home/ # 仪表盘 │ │ │ │ ├── link/ # 友链管理 │ │ │ │ ├── photo/ # 图片管理 │ │ │ │ ├── system/ # 系统管理 │ │ │ │ │ ├── blacklist/ # 黑名单管理 │ │ │ │ │ ├── menu/ # 菜单管理 │ │ │ │ │ ├── permission/ # 权限管理 │ │ │ │ │ ├── role/ # 角色管理 │ │ │ │ │ └── user/ # 用户管理 │ │ │ │ └── tag/ # 标签管理 │ │ │ ├── App.vue # 根组件 │ │ │ └── main.js # 应用入口 │ │ ├── default.conf # Nginx 配置 │ │ ├── docker.sh # Docker 部署脚本 │ │ ├── Dockerfile # Docker 镜像构建 │ │ ├── index.html # HTML 入口文件 │ │ ├── jsconfig.json # JS 配置 │ │ ├── package-lock.json # 依赖锁定文件 │ │ ├── package.json # 依赖管理 │ │ ├── README.md # 管理端说明 │ │ └── vite.config.js # Vite 配置 │ │ │ └── sidifensen_user/ # 📱 用户端前台 │ ├── dist/ # 构建产物 │ ├── node_modules/ # 依赖包 │ ├── public/ # 公共资源 │ │ └── favicon.ico # 网站图标 │ ├── src/ │ │ ├── api/ # API 接口定义 │ │ ├── assets/ # 静态资源 │ │ │ ├── font/ # 字体文件 │ │ │ ├── img/ # 图片资源 │ │ │ ├── scss/ # 全局样式 │ │ │ └── svg/ # SVG 图标 │ │ ├── components/ # 可复用组件 │ │ │ ├── Comment/ # 评论组件 │ │ │ ├── Footer.vue # 全局底部 │ │ │ ├── Header.vue # 全局头部 │ │ │ ├── LoadingAnimation.vue # 加载动画 │ │ │ └── SvgIcon.vue # SVG 图标组件 │ │ ├── router/ # Vue Router 路由配置 │ │ ├── stores/ # Pinia 状态管理 │ │ │ ├── darkStore.js # 暗黑模式状态 │ │ │ └── userStore.js # 用户状态 │ │ ├── utils/ # 工具函数 │ │ ├── views/ # 页面组件 │ │ │ ├── Account/ # 账户设置 │ │ │ ├── Article/ # 文章详情 │ │ │ ├── Column/ # 专栏 │ │ │ ├── Creation/ # 创作中心 │ │ │ ├── Home/ # 首页 │ │ │ ├── Layout/ # 布局组件 │ │ │ ├── Login/ # 登录页 │ │ │ ├── Photo/ # 相册 │ │ │ ├── Search/ # 搜索页 │ │ │ └── User/ # 用户主页 │ │ ├── App.vue # 根组件 │ │ └── main.js # 应用入口 │ ├── default.conf # Nginx 配置 │ ├── docker.sh # Docker 部署脚本 │ ├── Dockerfile # Docker 镜像构建 │ ├── index.html # HTML 入口文件 │ ├── jsconfig.json # JS 配置 │ ├── package-lock.json # 依赖锁定文件 │ ├── package.json # 依赖管理 │ ├── README.md # 用户端说明 │ └── vite.config.js # Vite 配置 │ ├── sql/ # 🗄️ 数据库脚本 │ ├── console.sql # 控制台相关 SQL │ └── sidifensen_blog.sql # 完整数据库结构和初始数据 │ └── .gitignore # Git 忽略配置 ``` ### 📂 核心目录说明 #### 后端 (`sidifensen_blog_backend/`) 采用经典的 **MVC 三层架构** + **领域驱动设计 (DDD)**: - **Controller 层**: 处理 HTTP 请求,参数校验,调用 Service - **Service 层**: 核心业务逻辑,事务控制 - **Mapper 层**: 数据库操作,使用 MyBatis-Plus - **Domain 层**: 领域模型,包含实体、DTO、VO、枚举等 - **Security 层**: 认证授权,JWT Token 管理 - **Utils 层**: 工具类,如时间处理、加密解密、文件上传等 #### 前端 (`sidifensen_blog_frontend/`) 基于 **Vue 3 Composition API** 的模块化架构: - **User 端**: 面向普通用户的博客前台,注重用户体验和内容展示 - **Admin 端**: 面向管理员的后台系统,注重功能管理和数据操作 - **API 层**: 封装所有后端接口调用,统一请求响应处理 - **Stores 层**: Pinia 状态管理,支持持久化 - **Router 层**: 路由配置,权限控制 - **Utils 层**: 工具函数,如时间格式化、权限判断等 #### 部署 (`script/`) 提供 **多种部署方式**,灵活适配不同场景: - **Docker Compose**: 推荐方式,一键启动所有服务 - **传统部署**: 手动部署前后端和依赖服务 - **SSL 支持**: HTTPS 证书配置和自动续期 - **跨平台**: Windows、Linux、macOS 全平台支持 ## ⭐ 功能特性
### 🔐 用户系统 - **多种登录方式**: 账号密码 + 第三方 OAuth 登录 (GitHub, Gitee) - **权限管理**: 基于角色的访问控制 (RBAC) - **安全防护**: JWT 认证 + Spring Security - **邮件验证**: 注册验证码 + 密码重置 + 邮箱修改 - **图形验证码**: 防止恶意注册和登录 - **用户主页**: 个人主页展示 + 关注/粉丝系统 - **创作中心**: 文章管理 + 专栏管理 + 评论管理 ### 📝 内容管理 - **富文本编辑**: 支持 Markdown + 所见即所得编辑 (AiEditor) - **文章系统**: 文章发布 + 草稿箱 + 回收站 + 审核机制 - **专栏系统**: 专栏创建 + 文章分类管理 - **标签系统**: 文章标签 + 标签管理 - **图片管理**: MinIO 对象存储 + 图片安全检测 - **内容审核**: 阿里云内容安全自动审核 - **AI 摘要**: DeepSeek API 智能提取文章摘要 + 配额限制 - **SEO 优化**: 友好的 URL 结构和 Meta 信息 ### 🎨 用户界面 - **响应式设计**: 完美适配桌面、平板、手机 - **暗黑模式**: 支持明暗主题切换 - **加载动画**: 优雅的加载和过渡效果 - **无限滚动**: 流畅的内容浏览体验 - **搜索功能**: 全文搜索和标签筛选 - **用户交互**: 点赞 + 收藏 + 评论 + 关注 - **历史记录**: 浏览历史 ### 🔧 管理后台 - **仪表盘**: 数据统计和系统监控 + ECharts 图表展示 - **用户管理**: 用户列表、角色权限管理、黑名单管理 - **内容管理**: 文章审核、评论管理、标签管理 - **文件管理**: 图片审核、相册管理、批量操作 - **系统管理**: 菜单管理、权限管理、角色管理 - **日志管理**: 登录日志、访问日志、操作记录 - **系统设置**: 站点配置、邮件配置、安全设置 ### ⚡ 性能优化 - **Redis 缓存**: 热点数据缓存,提升响应速度 - **异步处理**: RabbitMQ 消息队列处理耗时任务 - **定时任务**: 热门文章统计、数据清理 - **代码分割**: 前端代码按需加载 - **图片优化**: 图片压缩和懒加载 - **AOP 切面**: 统一日志记录和性能监控 - **智能限流**: API 限流保护,防止滥用(AI 接口每小时 2 次) ### 🚀 部署运维 - **Docker 支持**: 一键容器化部署 + Docker Compose 编排 - **多环境配置**: 开发、测试、生产环境分离 - **SSL 支持**: HTTPS 证书配置和自动续期 - **日志管理**: 结构化日志记录和分析 - **监控告警**: 应用性能监控 - **备份恢复**: 数据库自动备份机制 - **Windows 支持**: 提供 Windows 批处理脚本
## 🚀 快速开始 ### 📋 环境要求 | 组件 | 版本要求 | 说明 | | ----------------- | ---------------------------- | ----------------- | | ☕ JDK | 21+ | 后端运行环境 | | 🟢 Node.js | 18+ | 前端构建环境 | | 🐬 MySQL | 8.0+ | 主数据库 | | 🔴 Redis | 6.0+ | 缓存数据库 | | 🐰 RabbitMQ | 3.8+ | 消息队列 | | ☁️ MinIO | RELEASE.2025-04-08T15-41-24Z | 对象存储 | | 🐳 Docker | 20.0+ | 容器化部署 (推荐) | | 🐳 Docker Compose | 1.29+ | 容器编排 | ### 💾 数据库初始化 ```bash # 1. 创建数据库 mysql -u root -p CREATE DATABASE sidifensen_blog CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; # 2. 导入数据结构 mysql -u root -p sidifensen_blog < sql/sidifensen_blog.sql ``` > 💡 **提示**: 如果使用 Docker Compose 部署,数据库会自动初始化,无需手动执行以上步骤。 ### 🔧 后端启动 #### 传统方式启动 ```bash # 克隆项目 git clone https://github.com/your-username/sidifensen_blog.git cd sidifensen_blog/sidifensen_blog_backend # 配置数据库连接 # 编辑 src/main/resources/application-dev.yaml 文件 # 修改数据库、Redis、RabbitMQ 连接信息 # 启动后端服务 mvn clean install mvn spring-boot:run # 或者使用 IDE 直接运行 SidifensenBlogBackendApplication.java ``` #### Docker Compose 方式启动(推荐) ```bash # 克隆项目 git clone https://github.com/your-username/sidifensen_blog.git cd sidifensen_blog # 复制环境配置文件 # Windows: copy script\env.example .env # Linux/Mac: # cp script/env.example .env # 根据需要修改 .env 文件中的配置 # vim .env # 启动所有服务 # Windows: cd script && start.bat # Linux/Mac: # cd script && ./start.sh ``` #### 一键启动脚本 项目提供了便捷的启动脚本: - **Windows**: `script/start.bat` - Windows 批处理脚本,支持环境检查、服务启动、日志查看等功能 - **Linux/Mac**: `script/start.sh` - Shell 脚本,提供相同的功能 ### 🎨 前端启动 #### 传统方式启动 ```bash # 用户端启动 cd sidifensen_blog_frontend/sidifensen_user npm install npm run dev # 访问 http://localhost:5173 # 管理端启动 (新开终端) cd sidifensen_blog_frontend/sidifensen_admin npm install npm run dev # 访问 http://localhost:5174 ``` #### Docker Compose 方式启动(推荐) 使用 Docker Compose 启动时,前端应用会自动构建并启动,无需手动执行以下步骤。 ### 🌐 访问应用 启动成功后,可通过以下地址访问: #### 传统方式启动 - 📱 **用户端**: http://localhost:5173 (博客前台) - 🔧 **管理端**: http://localhost:5174 (后台管理) - 🔌 **后端 API**: http://localhost:8080 (REST API) #### Docker Compose 方式启动(推荐) - 📱 **用户端**: http://localhost:7000 (博客前台) - 🔧 **管理端**: http://localhost:8000 (后台管理) - 🔌 **后端 API**: http://localhost:5000 (REST API) - ☁️ **MinIO 控制台**: http://localhost:9001 (对象存储管理) - 🐰 **RabbitMQ 控制台**: http://localhost:15672 (消息队列管理) > 💡 **提示**: 默认端口可以在 `.env` 文件中修改。 ## 🐳 部署指南 ### 🔧 生产环境部署 #### 💻 服务器配置要求 **最低配置**: - CPU: 2 核 - 内存: 4GB - 存储: 20GB(建议 SSD) **推荐配置**(本项目实际运行环境): - CPU: 4 核 - 内存: 8GB - 带宽: 5Mbps - 存储: 40GB SSD > 💡 **提示**: > > - docker 部署需要 4g 内存 #### 1️⃣ 环境准备 ```bash # 安装 Docker 和 Docker Compose curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh # 安装 Docker Compose sudo curl -L "https://github.com/docker/compose/releases/download/v2.0.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose ``` #### 2️⃣ 使用 Docker Compose 一键部署(推荐) ```bash # 克隆项目 git clone https://github.com/your-username/sidifensen_blog.git cd sidifensen_blog # 复制环境配置文件 # Linux/Mac: cp script/env.example .env # Windows: # copy script\env.example .env # 根据生产环境修改 .env 文件中的配置 vim .env # 一键启动所有服务 # Windows: cd script && start.bat # Linux/Mac: # cd script && ./start.sh ``` #### 3️⃣ SSL 证书配置(可选) 项目支持 HTTPS 部署,提供了 SSL 证书配置: ```bash # 进入 SSL 配置目录 cd script/ssl # 复制 SSL 环境配置 cp env.example .env # 配置 SSL 证书信息 vim .env # 启动 SSL 版本 ./start.sh ``` #### 4️⃣ 传统方式部署 ##### 后端部署 ```bash cd sidifensen_blog_backend # 1. 修改生产环境配置 vim src/main/resources/application-prod.yaml # 2. 构建 JAR 包 mvn clean package -DskipTests # 3. 构建 Docker 镜像并启动 chmod +x docker.sh ./docker.sh # 或者手动执行 docker build -t sidifensen-blog-backend . docker run -d -p 8080:8080 --name sidifensen-blog-backend sidifensen-blog-backend ``` ##### 前端部署 ```bash # 用户端部署 cd sidifensen_blog_frontend/sidifensen_user npm run build chmod +x docker.sh ./docker.sh # 管理端部署 cd ../sidifensen_admin npm run build chmod +x docker.sh ./docker.sh ``` ### 🌐 访问地址 部署完成后,可通过以下地址访问: | 服务 | 地址 | 说明 | | ----------- | ------------------------ | ------------- | | 📱 用户端 | http://your-domain:7000 | 博客前台展示 | | 🔧 管理端 | http://your-domain:8000 | 后台管理系统 | | 🔌 后端 API | http://your-domain:5000 | REST API 接口 | | ☁️ MinIO | http://your-domain:9001 | 对象存储管理 | | 🐰 RabbitMQ | http://your-domain:15672 | 消息队列管理 | ### ⚙️ 配置说明 **重要配置项:** - 数据库连接信息 - Redis 连接配置 - RabbitMQ 连接配置 - MinIO 存储配置 - 阿里云内容安全配置 - 邮件服务配置 - OAuth 第三方登录配置 - DeepSeek AI 配置(文章摘要功能) > 💡 **提示**: 所有配置项都可以在 `.env` 文件中修改,详细说明请参考 `script/env.example` 文件。 ## 📸 项目截图展示 ### 🏠 首页
**博客首页 - 欢迎页面** 博客首页
### 📝 文章系统
**文章列表页面** 文章列表 **文章搜索结果页面** 搜索结果
### 📸 相册系统
**相册广场页面** 相册广场
### 🔗 友链系统
**友情链接页面** 友情链接
### 🎨 创作中心
**创作中心 - 首页** 创作中心-文章列表 **创作中心 - 文章管理** 创作中心-文章编辑 **创作中心 - 专栏管理** 创作中心-AI摘要 **创作中心 - 评论管理** 创作中心-专栏管理
### 👤 个人主页
**个人主页 - 文章展示** 个人主页-用户信息 **个人主页 - 专栏展示** 个人主页-文章展示 **个人主页 - 收藏内容** 个人主页-专栏展示 **个人主页 - 关注/粉丝** 个人主页-收藏内容 **个人主页 - 历史记录** 个人主页-历史记录
### 🔧 管理后台
**管理后台首页 - 数据统计仪表盘** 管理后台首页 **系统管理 - 菜单管理页面** 菜单管理 **文章管理 - 文章审核页面** 文章审核
## 🤝 贡献指南 我们欢迎所有形式的贡献!请遵循以下步骤: ### 📝 提交流程 1. **Fork 项目** 到你的 GitHub 账号 2. **创建特性分支**: `git checkout -b feature/amazing-feature` 3. **提交更改**: `git commit -m 'Add some amazing feature'` 4. **推送分支**: `git push origin feature/amazing-feature` 5. **创建 Pull Request** ### 🐛 问题报告 发现 Bug 或有新功能建议?请通过 [GitHub Issues](https://github.com/your-username/sidifensen_blog/issues) 提交。 **Bug 报告请包含:** - 🔍 详细的问题描述 - 🔄 重现步骤 - 💻 运行环境信息 - 📸 截图或错误日志 ## 📅 后续计划 我们正在积极开发新功能,以下是即将推出的特性: ### 🚧 计划中的功能 - [ ] **💬 私信功能开发** - 用户之间一对一私信交流 - 消息已读/未读状态 - 消息列表和对话管理 - 实时消息推送 - [ ] **🔔 用户前端消息通知** - 系统通知推送 - 点赞、评论、关注等互动提醒 - 消息中心统一管理 - 桌面/移动端通知支持 > 💡 **提示**: 如果你对这些功能有建议或想法,欢迎在 [Issues](https://github.com/your-username/sidifensen_blog/issues) 中讨论! ## 📄 许可证 本项目基于 [MIT License](LICENSE) 开源协议。 ### 🌟 如果这个项目对你有帮助,请给一个 Star ⭐ **💡 这是一个设计精良、功能完整的现代化博客系统,适合:** - 🎓 学习 Spring Boot + Vue 3 全栈开发 - 🚀 快速搭建个人博客网站 - 📚 作为企业级项目开发参考 - 🔧 二次开发和功能扩展