简介
Solo是一个可以用命令制作的Java开源博客系统,内置了15套精心制作的皮肤。除此之外,solo还有非常活跃的社区,分享给文章社区后,可以进行丰富的交流互动,让很多人看到。
SOLO的第一个版本于2010年推出,目前为止非常成熟稳定,请放心使用。
功能
Solo迄今为止沉淀的所有功能你都要使用。我们不会增加只有“20%”用户使用的功能。只有这样,博客系统才能保持应有的纯粹,只有轻便,才能获得简单的使用体验。
马克唐/埃莫吉
聚合分类/标签
自定义导航(页面,链接)
超高剪辑
评论/回复邮件通知
任意句子/相关句子/顶部/更新通知
自定义句子永久链接
用户定义的站点SEO参数
自定义公告/页脚
多个签名文件
代码将突出显示
多重皮肤,多级适应/社区皮肤
多语言/国际化
上传七雨云
友情链接管理
多用户写,团队博客
导出SQL文件
导入Hexo/Jekyll
插件系统
Atom/RSS订阅
Sitemap
meta web日志API
分离CDN静态资源
如果有新版本可用,升级过程也很简单。无需运行其他脚本,只需重新部署新版本。
然后,让我们看一下如何安装、配置、备份和常见问题解答。
项目源代码、项目说明、知识点共享、学习交流,那就加入小编Java学习交流群吧!
616 959 444
安装
安装之前,请使用JDK8或更高版本准备Java环境。Solo提供两种部署模式:独立模式和容器模式。数据库默认使用嵌入式H2数据库,还支持MySQL。详细内容稍后再讨论。
对于系统内存要求,建议至少512M、1G。
独立模式,JDK环境准备就绪后,解压缩最新的Solo软件包,进入解压缩目录!
独立模式使用嵌入式Jetty容器部署。解压缩war软件包后,只能使用一个命令启动。
windows : Java-CP we B- INF/lib/*;Web-INF/classesorg.b3log .
UNIX-like : Java-CP we B- INF/lib/* : we B- INF/classesorg . b 3 log .
注意:上述命令全部在前台执行,退出shell时结束。例如,在Linux上,需要nohup才能实现无中断操作。
容器模式
如果要使用Jetty或Tomcat(版本要求9或更高版本)进行部署,可以将war包放在容器的webapps目录中。
单机对容器
两种型号各有千秋。
独立模式:可以启动命令。如果不熟悉Java web,建议使用。
容器模式:可以放置在与现有程序相同的容器中,从而节省内存
详细配置
WEB-INF/classes目录中有两个默认配置文件。
La:用于配置域名和端口。浏览器访问时,请配置为域名和端口
Local.properties:用于配置数据库。要切换到MySQL,请在此配置
皮肤
下载的war包包含所有官方皮肤。如果您自己创建了源代码,您可以在这里下载皮肤。
将皮肤放置在皮肤目录下后,重新启动服务,选择“工具”-“首选项”-“在皮肤上使用”即可。
NGINX示例
le.detail&_iz=31825&index=1" width="640" height="316"/>相应的 la 配置:
初始化后
初始化成功后强烈建议到管理后台 -> 工具 -> 偏好设定中进行一下配置。
信息配置
博客基本信息:标题、子标题、SEO 信息
HTML head:可以配置脚本,比如百度统计
公告:可以使用 HTML 和脚本进行配置
页脚:主要用来放备案信息,也可以使用 HTML 和脚本进行配置
签名档
最多可以配置 3 个签名档,发布文章的时候选择一个使用,可以使用 HTML 和脚本进行配置。
参数设置
下面是一些比较有特色或重要的参数:
编辑器类型
列表显示方式:仅标题 / 标题 + 摘要 / 标题 + 正文
各种分页参数
文章更新提示:启用后一旦某篇文章更新过,则会在文章标题处显示“有更新”的提示,并且排序靠前
允许注册:开放注册后其他人可以注册成为“访客用户”,方便评论时不用每次都填写基本信息。管理员可以在用户管理中看到当前的所有用户,并可以改变用户角色
导入数据
MetaWeblog API
如果你之前使用的系统支持这个特性,可以先用客户端工具导出文章到本地,然后再导入 Solo,
可参考下面的 MetaWeblog API 配置。
静态博客 /Markdown
备份
war 包
如果你修改过代码请记得备份整体的 war 包,如果没有修改过则只用备份下面的配置文件。
配置文件
进行版本升级时需要,建议备份 WEB-INF/classes/ 目录下的三个文件:
la
local.properties
mail.properties(如果修改过的话)
数据库
H2:备份用户 home 目录下的 solo_h2 文件夹
MySQL:使用 MySQL 相关备份工具,或者到博客后台工具 -> 其他中进行 SQL 导出
获取项目源码,项目讲解,知识点分享,学习交流,那就加入小编的Java学习交流群吧!
616 959 444
强烈建议定时备份数据!!!
升级
使用在跑着的老版本的配置文件覆盖新版本 war 中的(或者重新再配置一次),然后直接部署就好,启动时会自动进行升级。要确认升级是否成功的话留意一下日志,或者查看 option 表中的 version 行。
注意:不能进行跨版本升级,建议紧跟我们的发布步伐
下面是两位用户升级 Solo 的经验分享,请参考一下:
其他一些特性
多用户
可以几个用户同时使用一个博客发布文章,主要用在团队博客这个场景。权限方面做了简单隔离,非管理员用户可以看到其他用户的博文 / 评论列表,但是不能进行操作。
RSS/Atom
提供两种订阅供稿:Atom 1.0、RSS 2.0,分别可以对博客文章列表、标签 - 文章列表进行供稿:
博客文章列表
Atom:
RSS:
标签 - 文章列表
Atom: ${tagId}
RSS: ${tagId}
浏览器直接打开可能会出现编码问题,可使用阅读器查看。
Sitemap
自动生成全站文章的 ,有利于 SEO。
前台皮肤切换
通过 URL 带参(比如 )来确定渲染使用的皮肤。
使用场景举例:
在不安装 Solo 的情况下可以方便预览各个皮肤(在 Demo 上)
方便二次开发时集成切换皮肤
博主可以让访客体验到不同的效果,比如:这个皮肤好看?还是这个好看?
1,只有在首页(/)会取参数skin=xxx
2,如果带有就记录到 Cookie 里面,如果带有skin=default或皮肤不存在则清空 Cookie
3,如果要切换成后台默认的皮肤,在首页带参skin=default
站外相关文章
“站外相关文章”指的是其他人使用 Solo 发布的文章,该文章含有与你的文章相同的标签。该功能主要是为了加强各个 Solo 博客之间的互动性,让博客访问者可以更有效地访问到相关的内容。
这是 B3log 构思 的一部分实现,欢迎各位大家积极参与进来
MetaWeblog API
MetaWeblog API 是用于离线管理文章的(比如使用 WLW),目前支持以下 APIs:
blogger.getUsersBlogs – 获取博客
me – 获取标签列表
me – 获取最新文章列表
me – 获取文章
me – 发布文章 / 保存草稿
me – 编辑文章
blogger.deletePost – 删除文章
配置地址:/apis/metaweblog,用户名 / 密码:管理员的口令
FAQ
初始化卡住
如果初始化向导页面已经正常显示,但是填完表单后点击“初始化”按钮后卡住,说明可能是 serverPort没有配置正确,这个端口需要配置为浏览器访问时候的端口,而不是容器启动的监听端口。
如何引入自定义静态资源,比如 .mp3?
请参考 WEB-INF 中的配置,加入自定义资源的路径匹配后重启。
如何获得更好的 Markdown 渲染效果?
获取项目源码,项目讲解,知识点分享,学习交流,那就加入小编的Java学习交流群吧!
616 959 444
Solo 默认是使用内嵌的 flexmark 进行 md 渲染,这个项目还比较新,对有的场景下的 md 渲染效果处理不是很好。如果你想要获得更好的 md 渲染效果需要这样做:
安装 Node.js
2.安装 marked:npm install marked --save
3.在 Solo 目录下执行
node js/marked以启动 markdown 解析引擎(你可能需要 nohup),需要 8250端口可用
4.重启 Solo 后就会使用 marked 作为 markdown 渲染引擎了
谢谢大家的观看,很晚了。今天先写到这里吧!后面会一步步的全部写出来,如果有什么不对或不同看法的请留言!谢谢!
后续:
开发环境、项目结构、框架说明
开发步骤、模版变量
插件机制、处理流程
1.《【solo命令】“程序员大佬”是Java体现的博客系统,让我们创建自己的博客吧!》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《【solo命令】“程序员大佬”是Java体现的博客系统,让我们创建自己的博客吧!》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/gl/2483000.html