Bolo-Solo开源博客系统零基础部署教程:从环境搭建到个性化配置
2026-04-24 10:10:39作者:齐添朝
Bolo-Solo是一款专为程序员设计的Java博客系统,基于Solo深度定制,提供免登录评论、邮件提醒、自定义图床等实用功能。本文将带你从零开始搭建个人博客,无需复杂技术背景,通过简单几步即可拥有属于自己的专业技术博客。
1.核心价值:为什么选择Bolo-Solo
Bolo-Solo作为一款成熟的Java博客系统,具有以下核心优势:
- 轻量高效:基于Java开发,运行稳定,资源占用低
- 主题丰富:内置15+精美主题,支持个性化定制
- 功能全面:包含文章管理、评论系统、数据统计等完整功能
- 部署灵活:支持Tomcat、Docker、宝塔面板等多种部署方式
- 易于扩展:插件化架构,支持功能扩展和二次开发
Bolo-Solo博客系统首页展示,支持多栏布局和个性化主题
2.环境准备:3步完成部署前准备
2.1 安装必要依赖
📌 步骤1:安装Java开发环境
- 确保JDK 8或更高版本已安装
- 验证安装:
java -version
💡 提示:推荐使用JDK 8,兼容性最佳
📌 步骤2:安装Maven构建工具
- 下载并配置Maven环境
- 验证安装:
mvn -version
📌 步骤3:安装Git版本控制
- 用于获取项目源代码
- 验证安装:
git --version
2.2 获取项目源码
git clone https://gitcode.com/gh_mirrors/bo/bolo-solo
cd bolo-solo
2.3 项目核心模块速览
src/main/java/org/b3log/solo/ → 核心业务逻辑
- processor/:请求处理模块,负责接收和响应HTTP请求
- service/:业务服务模块,实现核心功能
- util/:工具类模块,提供通用功能支持
- model/:数据模型模块,定义数据结构
src/main/webapp/ → Web应用资源
- skins/:主题皮肤目录,包含15+种博客主题
- js/:JavaScript脚本文件
- css/:样式表文件
- images/:图片资源
3.快速上手:5分钟启动博客系统
3.1 构建项目
📌 步骤1:使用Maven构建项目
mvn clean package -Dmaven.test.skip=true
3.2 初始化数据库
📌 步骤2:执行数据库脚本
# 脚本位于项目根目录下的scripts文件夹
cat scripts/1-create-database.sql | mysql -u root -p
3.3 启动应用
📌 步骤3:启动博客系统
# 使用内置Tomcat启动
mvn tomcat7:run
📌 步骤4:访问博客系统
- 打开浏览器访问:
http://localhost:8080 - 管理后台:
http://localhost:8080/admin
📌 步骤5:初始配置
- 登录管理后台(默认用户名/密码:admin/123456)
- 修改管理员密码
- 配置博客基本信息
4.深度解析:核心配置与个性化
4.1 启动流程全解析
Bolo-Solo的启动入口是src/main/webapp/WEB-INF/web.xml文件,这是Java Web应用的部署描述符(Web应用的配置清单)。
关键配置解析:
<!-- 日志配置 -->
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>/WEB-INF/classes/log4j.properties</param-value>
</context-param>
<!-- Spring上下文监听器 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- Spring MVC前端控制器 -->
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
常见问题:
- Q: 启动失败,提示端口被占用?
- A: 修改
pom.xml中的Tomcat端口配置:<plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <configuration> <port>8081</port> <!-- 修改为未占用端口 --> </configuration> </plugin>
4.2 5个必知配置项
-
博客基本信息配置
- 文件路径:
src/main/resources/latke.properties - 关键配置:
server.servlet.context-path=/ blog.title=我的技术博客 blog.subtitle=分享技术,记录生活
- 文件路径:
-
数据库配置
- 文件路径:
src/main/resources/jdbc.properties - 配置示例:
jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/bolo?useSSL=false jdbc.username=root jdbc.password=password
- 文件路径:
-
邮件服务配置
- 文件路径:
src/main/resources/mail.properties - 用于评论通知、邮件订阅等功能
- 文件路径:
-
主题配置
- 文件路径:
src/main/resources/skins.properties - 切换主题:
skinDirName=bolo-butterfly
- 文件路径:
-
安全配置
- 文件路径:
src/main/resources/security.properties - 配置评论过滤、防SQL注入等安全策略
- 文件路径:
4.3 主题切换与定制
Bolo-Solo提供多种主题,位于src/main/webapp/skins/目录下,如:
bolo-butterfly/:现代化卡片式布局bolo-nijigen/:二次元风格主题bolo-casper/:简洁杂志风主题
切换主题步骤:
- 登录管理后台
- 进入"皮肤管理"
- 选择喜欢的主题并应用
自定义主题:
src/main/webapp/skins/[主题名称]/
├── css/ # 样式文件
├── js/ # 脚本文件
├── images/ # 图片资源
└── *.ftl # 页面模板
5.新手误区提示
-
数据库连接失败
- 常见原因:数据库未创建或用户名密码错误
- 解决:先执行
1-create-database.sql脚本创建数据库
-
忘记管理员密码
- 解决:通过数据库修改:
密码将重置为UPDATE b3_solo_user SET userPassword='81dc9bdb52d04dc20036dbd8313ed055' WHERE userId='admin';123456
- 解决:通过数据库修改:
-
主题修改不生效
- 原因:缓存未清除
- 解决:管理后台 -> 工具 -> 清除缓存
-
部署到外部Tomcat
- 误区:直接使用Maven打包的war包
- 正确:使用
mvn package -P prod命令构建生产环境包
-
数据备份
- 重要:定期备份数据库和
src/main/webapp/WEB-INF/data/目录
- 重要:定期备份数据库和
6.进阶学习路径
6.1 核心模块源码学习
- 文章管理:
src/main/java/org/b3log/solo/processor/ArticleProcessor.java - 评论系统:
src/main/java/org/b3log/solo/processor/CommentProcessor.java - 主题引擎:
src/main/java/org/b3log/solo/processor/SkinRenderer.java - 数据统计:
src/main/java/org/b3log/solo/service/StatisticMgmtService.java
6.2 功能扩展
- 开发插件:参考
src/main/java/org/b3log/solo/plugin/目录下的示例 - 自定义主题:基于现有主题修改,或创建新主题
- 集成第三方服务:通过API集成评论系统、阅读量统计等
6.3 性能优化
- 开启缓存:
src/main/resources/cache.properties - 图片优化:使用图床服务或CDN
- 数据库优化:添加索引,优化查询
通过本教程,你已经掌握了Bolo-Solo博客系统的部署和基本配置。这款开源博客系统不仅适合个人技术博客搭建,也可作为学习Java Web开发的实践项目。开始你的博客之旅吧!
登录后查看全文
热门项目推荐
相关项目推荐
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0153- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
LongCat-Video-Avatar-1.5最新开源LongCat-Video-Avatar 1.5 版本,这是一款经过升级的开源框架,专注于音频驱动人物视频生成的极致实证优化与生产级就绪能力。该版本在 LongCat-Video 基础模型之上构建,可生成高度稳定的商用级虚拟人视频,支持音频-文本转视频(AT2V)、音频-文本-图像转视频(ATI2V)以及视频续播等原生任务,并能无缝兼容单流与多流音频输入。00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0112
项目优选
收起
暂无描述
Dockerfile
733
4.75 K
deepin linux kernel
C
31
16
Ascend Extension for PyTorch
Python
651
797
Claude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed.
Get Started
Rust
1.25 K
153
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
1.1 K
611
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.01 K
1.01 K
华为昇腾面向大规模分布式训练的多模态大模型套件,支撑多模态生成、多模态理解。
Python
147
237
昇腾LLM分布式训练框架
Python
168
200
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
434
395
暂无简介
Dart
986
253



