ZrLog
v1.7.0 官方版- 软件大小:6.15 MB
- 更新日期:2019-10-30 14:41
- 软件语言:简体中文
- 软件类别:网络编程
- 软件授权:免费版
- 软件官网:待审核
- 适用平台:WinXP, Win7, Win8, Win10, WinAll
- 软件厂商:
软件介绍 人气软件 下载地址
ZrLog是一款最好用的开源Java博客程序之一,此系统主要采用了最流行的Java作为编辑框架,具有界面简约,使用方便,所有功能模块全部组件化,占用内存非常低等特色;在程序中,系统内置了一个强大的Markdown编辑器,有了它,用户可以把更多的时间花在写作上;该程序旨在希望记录用户一生人生琐事,当自己有空闲时间的时候可以通过Zrlog回味自己人生经历;知识的载体原本是书,但是当今社会没有多少人会去读书,互联网的诞生,让人类获取知识的途径变得更加丰富;所有该程序就因此而衍生;强大又实用,需要的用户可以下载体验
软件功能
1、提供日志,分类,标签,评论的管理
2、支持插件模式 如何编写一个zrlog插件 http://blog.zrlog.com/post/zrlog-plugin-dev
3、高度可定制的主题功能
4、支持第三方评论插件
5、提供 editormd 主流的富文本编辑器,基本上满足了管理员的编辑需求
6、缓存公共数据,访问速度更快
7、支持页面静态化,默认主题添加标题设置
8、支持扩展第三方云存储(默认七牛)
9、支持数据库定时备份,优化主题管理界面
软件特色
1、文章,分类别名支持中文
2、更新管理界面添加手动检测按钮
3、增强了主题开发(引入dev.jsp可以快速浏览存放在request域的数据,便于模板页面读取的渲染)
4、https的支持,需要在nginx.conf文件的http块里面添加 `proxy_set_header X-Forwarded-Protocol $scheme;
5、在网站设置里添加对会话过期时间的控制
6、改进了插件功能,使用vue.js客户端渲染替换原有使用freemarker服务端渲染
7、备份插件支持window系统
8、增加新的畅言评论框
9、开源协议由GPLv2变更到Apache
安装说明
zrlog对一些不太懂网站程序安装的人提供了安装引导。但是安装整个安装过程也不是想象的那么的流畅,针对这种问题,于是就有了下面这个比较完善的文档
部署环境前提
1.jre 版本 >= 1.8
2.tomcat 版本 >=8,jetty >= 8
3.mysql
一直用tomcat作为开发的webServer,在jetty下面可以正常运行(bae提供),其他的webServer欢迎大家进行尝试
Java 这里分两种情况,JDK,JRE。如果不在服务运行 javac 这样的命令建议直接安装 jre 就可以了。
如何不了解如何安装JDK/JRE,mysql,tomcat 可以浏览下面的文档
Windows文档
mysql
解压完后,运行其中的 .exe 文件,一直按照步骤走完安装流程就可以了
这里注意下,选择下编码 UTF-8 *
Java
windows
通过oralce 下载自己合适的版本
运行 .exe 文件一直走完安装流程。
配置环境变量
控制面板控\制面板项\系统\高级设置
开始搭建java的环境变量了额,选择新建一个命名为 JAVA_HOME 在变量值的那一行中填写C:\Program Files\Java\jdk1.6.0_43。
看看有没有Path这个,如果没有的话就新建一个吧 有的话。 千万不要把它给删除了额。 删除的话 会导致其实东不能用的额 比如系统的东西可能会存在不能访问额。 在变量值中的前填写 自己的JDK的路径 C:\Program Files\Java\jdk1.6.0_43\bin; 或者是 %JAVA_HOME%\bin; 这里%时说的这里的面的东西时变量 而不是单纯的路径额
查看是否电脑中友java环境的话 进入dos(win+R)框输入 java (这里必有一个空格额) -version 如果出现了 这样的图就可以说明OK了
Linux安装
mysql
RedHat/CentOS
yum -y install mysql-server
Debian/Ubuntu
sudo apt-get -y install mysql-server
Java
介于Linux下面安装方式较多就说一个自己在用的
通过oralce 下载自己合适的版本
解压 .tar.gz 文件
tar -xvf jdk-*.tar.gz
在 .basrhc 文件最后面追加
vim .basrhc
export JAVA_HOME=/home/xiaochun/dev/jdk1.8.0_45(填写自己对应的路径)export PATH=$JAVA_HOME/bin:$PATH
source .basrhc 刷新下,然后用 java -version 接可以了
注:程序并不会自动创建对应的数据,安装前需要手动创建数据库
创建用户以及数据库,下面的SQL语句为 创建一个 zrlog_test 的数据库,创建一个 zrlog_test用户 登录密码为 123456可以完全访问 zrlog_test 这个数据库
create database zrlog_test;CREATE USER 'zrlog_test'@'%' IDENTIFIED BY '123456';use mysql;GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EXECUTE, TRIGGER ON `zrlog\_test`.* TO 'zrlog_test'@'%';
强烈推荐将Zrlog部署bae环境
如何在BAE运行Zrlog博客程序
准备工作完成
快速开始
如果你正好用的也是Linux的系统,那么这行命令可以让你更快的运行 ZrLog(前提是你已经完成了JDK的安装)
curl -s https://www.zrlog.com/install/release.sh | bash,安装完成后,停止当然运行的 tomcat,然后进入 tomcat 的目录,使用 sh bin/catalina.sh start 后台运行 Tomcat,就可以宣告安装完成了
手动配置
下载最新的war包,同时可以通过下载最新的源码自己通过maven构建war包。
由于网络到处都是采集的,难免源码被人篡改,推荐使用 http://dl.zrlog.com/release/zrlog.war 这个地址下载
将.war放到tomcat的webapps目录里面。如果tomcat里面不存在其他的程序,将zrlog.war改为ROOT.war,可以避免输入二级目录zrlog
启动 tomcat 查看控制是否有错误信息输出,若没有可以访问 http://host:port/zrlog/instll 开始使用向导安装
上面如果第一步无法通过的话,检查mysql数据库信息是否正确
在输入管理密码的时候,请认真输入(输入2次密码有过了)
注意
使用Nginx这类代理软件,需要额外修改将代理前的Host给Tomcat容器(默认会被转化为127.0.0.1:8080这类地址)
Nginx 添加 proxy_set_header Host $host 到对应server配置项,或则是在http模块里面
Window 系统页面乱码
由于程序默认的编码为 UTF-8,而有的系统是GBK的,所以需要手动配置编码,需要添加一个环境变量
JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF-8
使用说明
插件(Plugin),在很多系统中都会有这样的关键字,或许这样会让个系统不是简单CRUD操作。特别是 wordpress, emlog 这样的cms。或许Java本身的特点(企业应用开发,不需要太多灵活的东西)。做起插件这种东西来并不是那么容易。网上找相关的实现更是少的可怜。Java在cms这方面并没有像dz,phpwind,wordpress,织梦等 这么受广大站长欢迎的程序。
想法
Java本生特点
Java运行的是需要将.java文件编译为.class文件。所有就有了一些说法是.class 是伪机器码,这样就会失去了一些灵活性,不让像php这些语言可以马上的看到变更后效果。而对应插件来言这样种效果有显得格外的重要了。比如绑定了一个 /admin/plugin/first 的路由。php 可以轻松的关闭这个路由,而Java呢?首先在tomcat这类容器启动的时候就已经把路由加载完了。想再去通过程序去控制路由会变得相当的复杂。
J2ME
或许第一款手机不是android,苹果喜欢玩手机的朋友都或多或少都知道这个名词吧,影响比较深的是想在一个软件中启动另外一个软件是多么困难,而插件呢?当时记得用过最多的浏览器是UC(感觉就是比默认的浏览器好看很多),而当时的UC也只是有一个主题中心的东西。反而是mrp做到了(参见冒泡的应用中心)。
Eclipse & OSGi
Eclipse 这个词或许对于Javaer都不陌生,甚至有些的C/C++的程序员都在使用。Eclipse就是一个Java中做插件做的比较牛逼的。有人说MyEclipse就是装了一大堆插件Eclipse。然而Eclipse 这样强大的插件模式对 OSGi 的一种实现
OSGi (Open Service Gateway Initiative)技术是Java动态化模块化系统的一系列规范,由于这种东西并不几句化就可以说通的。目前我理解到的OSGi还只是局限与将一段的代码打包到一个 war,jar,ear 中。对这方面很感兴趣的可以看下 《Java应用架构设计 - 模块化模式与OSGi》 这本书。
既然不容易的实现,还要实现?答案当然肯定的,不然就不会有下面这些内容了。
实现
既然对OSGi的理解还仅仅的局限打包,那么估计要让一个初学者也体会到OSGi的强大会更加的困难。这样并不利于一个需要快速开发的插件。结合自己对OSGi已有的理解倒腾出zrlog插件的第二版本。
细节
jar & war
将项目打jar而不是war包。war自己能控制太少了,而却这个还完完全全的的运行在web容器中。于是使用 jar的方式。
插件核心服务
Socket
插件集中化管理,这里插件与核心服务通信使用TCP长连接做消息通知。这里plugin-core将会占用2个端口,一个用于处理zrlog发起的Http请求。另个用于管理插件和通知插件,以及中转服务。
当然大多时候插件不用关心TCP连接的创建和销毁,可以理解为J2EE中的web容器,编写对应路由代码就可以了。
命名空间
nampspace,插件的唯一标示,及在 plugin.properties 里面 shortName 这个key对应的value。不要使用中文,中文有时候会带来无故的编码问题,比如 shortName 的值是 first 那么 /admin/plugin/first/* 就会路由给这个插件,当然可以通过 path 将有的路由公开。这样 /p/first/* /plugin/first/* 的请求也将路由给这个插件
静态资源和页面渲染
页面渲染目前提供了Freemarker,Jtwig。后期将会支持 beetl。关于静态资源的判定是根据请求中包含 .将会被标示一个文件,这个只需要将文件放到对应目录下面就可以了。
插件安全
由于在插件核心绑定了TCP端口,程序将绑定的端口绑定的网卡设置为 127.0.0.1 不通过代理工具公开这些端口是不可能在外网访问到的,当然每次创建的端口都是随机的(一个服务器可以运行多个博客程序)。对于没有通过 path 单独添加的路径,都检查是否登录。
关于权限
插件调用level不为0的请求将会获取用户同意后才进行处理(未完成),及0为基础权限。需要更多交互需要扩充这些枚举,在plugin-core编写对应的方法参才可以
内存使用
由于每个插件都是单独启动的JVM,如果不对使用内存量进行控制,很容易在系统资源将耗尽的时候程序被关闭。于是jar文件在被加载时通过启动参数 -xmx16m -xms4m 进行限制,及单个插件能最多使用16m的内存
开发环境&运行环境
为了方便开发,于是多提供了一个开发环境,这个环境的值是有INIT_CONNET完成后确定的,环境状态控制通过 plugin-core 控制。当部分情况与运行环境有差异的时候通过这个参数进行判定。
日志&控制台
程序所有输出将会在plugin-core进行输出,方便开发,日志工具选择自己经常使用的就可了。当然也可以使用 LoggerUtil 进行记录。
打包
推荐使用Maven构建项目,这样就方便打包为 jar 文件。
mvn 打包命令
人气软件
-
securefx8.0中文 56.40 MB
/简体中文 -
Altova XMSpy 2006 企业汉化 27.00 MB
/简体中文 -
JCreator LE 4.00.028 3.00 MB
/英文 -
PHP5开发环境集成包 phpStudy 1.7.0 9.00 MB
/英文 -
WampServer 轻松搭建WAMP Web服务器环境 60.00 MB
/简体中文 -
PHP编辑器 CodeLobster PHP Edition 5.11 中文绿色版 26.00 MB
/简体中文 -
FilterLab(低通滤波器设计软件) 6.84 MB
/简体中文 -
JetBrains CLion(C/C++开发工具) 315.0 MB
/简体中文 -
ApiPost(接口调试与文档生成工具) 112.0 MB
/简体中文 -
ZrLog 6.15 MB
/简体中文