原文地址:https://my.oschina.net/gywbest/blog/780569

一 应用背景描述

在平时的运维工作中,把常规工作进行文档整理非常重要,无论是平时工作处理或是工作交接,实时的维护文档资料可以提高工作效率。如果采用传统的TXT文档或者Word文档来记录的话修改不太方便,采用在线WIKI可以更好的让大家实时地查看或者修改文档资料。

Wiki系统做得比较好的是Confluence,但是Confluence需要购买License才能使用,网上也有破解版本的。对比多个开源WIKI系统,我们选择XWIKI作为我们的WIKI系统,因为它提供的功能与Confluence的功能非常相似,不需要学习任何语法格式,可以直接在线像编辑Word一样编辑WIKI页面。

XWIKI有以下几个显著的功能特性:

1)多语言支持,可以支持英文,中文,韩文,日文等

2)可以上传附件

3)支持LDAP方式认证登录

4)可以将Office文档直接导入为WIKI页面,也可以将WIKI页面导出成Office文档或PDF文档

5)使用者不需要学习任何WIKI语法格式,直接使用WYSIWYG编辑器进行WIKI页面的编辑。

6)具有版本控制管理的功能,并且可以回退到之前的历史版本

7)界面友好,功能丰富,内置搜索引擎,可以进行站内搜索。

8)用户和组权限管理,空间和页面的权限管理

9)邮件通知功能

10)支持多种WIKI的语法格式,如Confluence,Markdown,Jspwiki,meidawiki,twiki等

本文使用的是CentOS6系列操作系统

二:安装JDK

1)JDK的安装与配置

①检查系统自带的JDK,为了避免不必要的麻烦,我们要卸载旧版本,安装新版本

运行#rpm -qa|grep jdk,我们看到系统自带了java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el6_5.x86_64,所以我们执行#rpm -e --nodeps java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el6_5.x86_64来卸载老版本

老版本卸载了,我们来安装新版本,打开Xmanager Enterprise 5,本人将事先下载的jdk-8u91-linux-x64.rpm传到服务器里/home目录下,进入/home目录,#cd /home,查看上传的结果#ls,我们可以看到文件已经到了目录下了,然后使用#rpm -ivh jdk-8u91-linux-x64.rpm进行安装

显示安装完毕,运行#java -version,查看到新版本的JDK已经安装完成了

②配置JDK环境

执行#vi /etc/profile,在结尾处加入以下蓝色内容,并保存退出(这里再强调下vi与vim编辑器的使用:用vi或者vim打开文件后,按A键是插入编辑模式,ECS键是退出编辑模式,编辑后shift+冒号键会出现冒号,wq是保存退出,q是退出,q!是不保存退出)

JAVA_HOME=/usr/java/jdk1.8.0_91

export JRE_HOME=/usr/java/jdk1.8.0_91/jre

export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

修改后保存退出,执行# source /etc/profile,将改动写入配置文件即可,如果没有报错,那说明JDK安装布置完毕!

三.tomcat的安装与环境配置

①tomcat的安装与启动

本人将apache-tomcat-8.0.33.tar上传到/usr/local目录下,进入此目录

#cd /usr/local

#ls

可以看到tomcat文件,对文件进行解压缩

#tar -zxvf apache-tomcat-8.0.33.tar.gz

现在看到文件夹已经变成了tomcat,这说明我们已经安装完了,下面需要配置下环境

#vim /etc/profile.d/tomcat.sh,加入

export CATALINA_HOME=/usr/local/tomcat

export PATH=$CATALINA_HOME/bin:$PATH

保存退出,写入配置文件

#.  /etc/profile.d/tomcat.sh,

进入tomcat的bin目录

#cd /usr/local/tomcat/bin

启动tomcat

#catalina.sh start

tomcat启动了

②关闭防火墙,设置tomcat开机自启

不关闭防火墙,可能无法访问tomcat;运行#service iptables stop,防火墙关闭,运行#chkconfig iptables off,让防火墙开机不启动(如下图)。

设置tomcat开机自启

#vi /etc/rc.d/rc.local,

加入

JAVA_HOME=/usr/java/jdk1.8.0_91

/usr/local/tomcat/bin/startup.sh start

可以让tomcat开机自启。(下图所示)

这个时候,可以访问本地的IP,后面加上:8080访问tomcat了,我的是http://192.1681.110:8080/,可以看到tomcat的访问界面了

不过这并没完,我们点击页面右侧的Manager App,会出现一个对话框,让输入用户名与密码,这是因为没有对tomcat的账户进行设置管理,所以我们进入#cd /usr/local/tomcat/conf目录下,对tomcat-users.xml进行编辑,运行#vim tomcat-users.xml,加入<role rolename="manager-gui"/>

<user username="tomcat" password="123456" roles="manager-gui"/>保存退出

用户名与密码可以自行设定(如下两张图所示)。

③编辑tomcat的server.xml修改8080端口描述设置编码为UTF8,并允许gzip压缩(下图白色字体)

#cd /usr/local/tomcat/conf

#vim server.xml,加入上图的白色部分URIEncoding="UTF-8"

compression="on"

compressionMinSize="2048"            compressableMimeType="text/html,text/xml,text/css,text/javascript,application/x-javascript:/>

保存退出

④配置JVM的内存大小和安装路径

#cd  /usr/local/tomcat/bin

#vim catalina.sh,加入JAVA_HOME="/usr/java/jdk1.8.0_91"

JAVA_OPTS="-Xmx3276m -XX:MaxPermSize=819m"

保存退出,tomcat的安装布置就完成了

四.Mysql的安装与配置

可以参考从零开始编译安装LAMP中mysql的编译安装:https://my.oschina.net/gywbest/blog/780495

运行#chkconfig,在其中看到mysql,就说明mysql可以开机自启了

现在可以说mysql是正确的安装了

运行#mysql -uroot -p,然后登陆,加入三句create database xwiki default character set utf8 collate utf8_bin;  grant all privileges on xwiki.* to xwiki identified by 'xwiki,./';  flush privileges;

这样就创建了xwiki数据库并赋予了权限(注意,mysql语句要用;作为结尾)完成后运行exit

这里多说一句:使用rpm包安装mysql,默认情况下,mysql相关文件会在/var/lib/mysql下,相关的控制文件my.cnf文件则在/usr下,请大家注意。

五.安装配置Nginx(可选)

默认XWIKI通过类似http://xxxx:8080/xwiki/的方式访问,可以配置Nginx转发。

本公司的xwiki是作为内网使用的,其实可以不安装nginx,但是为了xwiki教学,为了大家熟悉linux系统,所以这里还是对此进行下说明

1.安装nginx

#yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel,对于nginx,我们需要编译安装,这步是安装编译工具与库文件,这个需要一点时间,成功后系统会提示。

接下来,我们安装pcre

我们进入#cd /usr/local这个目录,创建一个webserver的文件夹,#mkdir webserver,然后#cdwebserver,将下载好的nginx-1.10.1.tar放入此文件夹里,解压缩#tar -zxvf nginx-1.10.1.tar,解压缩后,我们将这个文件夹改名#mv nginx-1.10.1 nginx,这样,文件夹就变成了nginx了(如下图)

这个先不管它,我们先去安装pcre,#cd /usr/local/src,将下载好的pcre-8.38.tar上传到此文件夹里,然后解压缩#tar -zxvf pcre-8.38.tar.gz

我们进入#cd /usr/local/src/pcre-8.38,这个目录,#./configure,开始编译安装pcre,这时候会弹出一大堆的提示,之后#make && make install开始编译安装,这需要一点时间,看到下图,说明安装结束

好,我们回到刚才的#cd /usr/local/webserver/nginx目录,#./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-httpstatus_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.38

之后#make,再 #make install (这两个过程有点长)期间可能会有报错,不过不用管,完成后我们运行# /usr/local/webserver/nginx/sbin/nginx -v看到下图则说明成功

到此,说明nginx安装完毕。

2.配置nginx

进入#cd /usr/local/webserver/nginx/conf,对相关控制文件进行修改#vim nginx.conf,按照图中进行修改

修改内容为:

server {

listen       80;

server_name  xwiki.nbs.com;

root  /usr/local/tomcat/webapps/xwiki;

#charset koi8-r;

#access_log  logs/host.access.log  main;

location / {

rewrite ^ $scheme://$server_name/xwiki:$request_uri?permanent;

}

location ^~ /xwiki {

# If path starts with /xwiki - then redirect to backend:XWiki application in Tomcat

proxy_pass http://localhost:8080/xwiki;

}

我们运行#  /usr/local/webserver/nginx/sbin/nginx -t来检查文件ngnix.conf的正确性,结果报错了

提示报错nginx: [alert] could not open error log file: open() "/usr/local/webserver/nginx/logs/error.log" failed (2: No such file or directory)

nginx: the configuration file /usr/local/webserver/nginx/conf/nginx.conf syntax is ok

2016/07/24 13:12:56 [emerg] 28312#0: open() "/usr/local/webserver/nginx/logs/nginx.pid" failed (2: No such file or directory)

nginx: configuration file /usr/local/webserver/nginx/conf/nginx.conf test failed,从这段提示可以看到,系统找不到/usr/local/webserver/nginx/logs/error.log这个文件,原来是文件夹里没有生成这个文件,不要紧,我们可以自己做一个文件,# cd /usr/local/webserver/nginx,#mkdir
logs,建立一个logs的文件夹,然后进入#cd logs,#vi error.log,使用编辑命令可以创造一个文件,然后保存退出,这样你就有了/usr/local/webserver/nginx/logs/error.log这个文件了,再次运行# /usr/local/webserver/nginx/sbin/nginx -t,如下图,说明ngnix.conf是正确的

运行# /usr/local/webserver/nginx/sbin/nginx,启动nginx

六.安装配置Office Server

将Apache_OpenOffice_4.1.2_Linux_x86-64_install-rpm_zh-CN.tar上传至/opt目录下,#cd /opt,对其解压缩#tar -zxvf Apache_OpenOffice_4.1.2_Linux_x86-64_install-rpm_zh-CN.tar

#cd /opt/zh-CN/RPMS,运行#yum -y localinstall *.rpm,这个需要一点时间,请耐心等待

接着,我们进入这个目录 #cd /opt/zh-CN/RPMS/desktop-integration,#ls,会看见四个rpm文件,我们要安装openoffice4.1.2-redhat-menus-4.1.2-9782.noarch.rpm

直接安装openoffice4.1.2-redhat-menus-4.1.2-9782.noarch.rpm会报错,所以使用#rpm -ivh --force  openoffice4.1.2-redhat-menus-4.1.2-9782.noarch.rpm,进行强制安装,如果出现上图的情况,说明安装成功了。

设置一直后台启动

#nohup  /opt/openoffice4/program/soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard &

查看服务是否启动(端口8100是否被soffice占用):

#netstat -lnp |grep 8100

如图显示一切正常。

七.安装xwiki并进行一些修改设置

①安装xwiki

#cd /usr/local/tomcat/webapps,然后建立一个xwiki的文件夹,#mkdir xwiki

将xwiki-enterprise-web-8.1.war上传到此目录

对xwiki的文件进行解压缩#cd /usr/local/tomcat/webapps/xwiki

#unzip xwiki-enterprise-web-8.1.war

将事先下载好的mysql-connector-java-5.1.9上传到/usr/local/tomcat/webapps/xwiki/WEB-INF/lib(如下图)

②修改xwiki的相关文件

hibernate.cfg.xml

#vim /usr/local/tomcat/webapps/xwiki/WEB-INF/hibernate.cfg.xml

去掉mysql的注释部分,并对一些地方进行修改(我分成两张图说明)

上图修改后内容为

<!-- Configuration for the default database.

Comment out this section and uncomment other sections below if you want to use another database.

Note that the database tables will be created automatically if they don't already exist.

<property name="connection.url">jdbc:hsqldb:file:${environment.permanentDirectory}/database/xwiki_db;shutdown=true</property>

<property name="connection.username">sa</property>

<property name="connection.password"></property>

<property name="connection.driver_class">org.hsqldb.jdbcDriver</property>

<property name="dialect">org.hibernate.dialect.HSQLDialect</property>

<property name="hibernate.connection.charSet">UTF-8</property>

<property name="hibernate.connection.useUnicode">true</property>

<property name="hibernate.connection.characterEncoding">utf8</property>

<mapping resource="xwiki.hbm.xml"/>

<mapping resource="feeds.hbm.xml"/>

<mapping resource="activitystream.hbm.xml"/>

<mapping resource="instance.hbm.xml"/>

<mapping resource="mailsender.hbm.xml"/>

-->

此图修改后内容为

<!-- MySQL configuration.

Uncomment if you want to use MySQL and comment out other database configurations.

-->

<property name="connection.url">jdbc:mysql://localhost/xwiki?useSSL=false</property>

<property name="connection.username">root</property>

<property name="connection.password">123456</property>

<property name="connection.driver_class">com.mysql.jdbc.Driver</property>

<property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>

<property name="dbcp.poolPreparedStatements">true</property>

<property name="dbcp.maxOpenPreparedStatements">20</property>

<property name="connection.useUnicode">true</property>

<property name="connection.characterEncoding">UTF-8</property>

<mapping resource="xwiki.hbm.xml"/>

<mapping resource="feeds.hbm.xml"/>

<mapping resource="activitystream.hbm.xml"/>

<mapping resource="instance.hbm.xml"/>

<mapping resource="mailsender.hbm.xml"/>

Xwiki.properties

#cd /usr/local/tomcat/webapps/xwiki/WEB-INF

#vim xwiki.properties

这里有三处更改

注意绿色字体内的修改内容,其实是去掉了#号,这样就让此更改生效了

openoffice.autoStart=ture

openoffice.homePath=/usr/lib64/libreoffice

这是两处更改后的内容,不仅去掉了#,也修改了参数,这样,xwiki.properties就修改完了

Xwik.cfg

#cd /usr/local/tomcat/webapps/xwiki/WEB-INF

#vim xwiki.cfg

共四处要修改

这三处是修改附件存储方式并使其生效,具体内容是

-# The main (documents) storage. [Since 3.4M1] default is hibernate.

# xwiki.store.main.hint=hibernate

#-# The attachment storage. [Since 3.4M1] default is hibernate.

xwiki.store.attachment.hint=file

#-# The document versioning storage. [Since 3.4M1] default is hibernate.

# xwiki.store.versioning.hint=hibernate

#-# The attachment versioning storage. Use 'void' to disable attachment versioning. [Since 3.4M1] default is hibernate.

xwiki.store.attachment.versioning.hint=file

#-# The document recycle bin storage. [Since 3.4M1] default is hibernate.

# xwiki.store.recyclebin.hint=hibernate

#-# The attachment recycle bin storage. [Since 3.4M1] default is hibernate.

xwiki.store.attachment.recyclebin.hint=file

开启管理员管理功能,也是修改次文件,修改只是去掉了#,xwiki.superadminpassword=system

记得保存退出,好了,xwiki的相关文件就修改完成了,下一步我们重启服务器,#reboot

系统重启后,稍过片刻,因为tomcat自己启动需要一些时间,打开浏览器,在页面输入http://192.168.1.110:8080/xwiki/,这个地址根据每个人IP定,你就可以看到xwiki的界面了

注意,这只是布置好了最基本的xwiki界面,里面很多插件还没有安装,无法正常使用,所以我们要进行下一步工作,那就是让xwiki在线升级自己的插件。

七.xwiki插件在线升级

刚才我们看到了xwiki的引导界面了,我们点下continue,稍等,系统启动较慢,不要操之过急,否则会跳过升级插件的界面(这里说一下,万一你不小心跳过了界面,或者xwiki没有响应,你可以将tomcat的缓存文件删除后重启机器再进入xwiki界面,目录是/usr/local/tomcat/temp,见下图)

将temp内的文件都删除

这是xwiki的注册界面,我们可以在此注册

注意,这一步是需要升级xwiki的插件了,点击install

这是正在升级的状况了,中间会有手动点击continue(install)的时候,请注意,务必保持网络通畅,如果报错,请刷新页面。

经过一段时间后,出现这个界面,就说明你的xwiki插件安装完毕了,继续点击continue

这里接着点击继续

当你看到这个界面的时候,就说明你的进入了xwiki主要页面了,恭喜。

下面我们要把语言改成中文

这是在刚才那个页面的左上角,点击红圈内,进行登录(用户名可以是自己注册的,也可以是系统默认的superadmin,system)

点击Administer Wiki,然后会出现下图的内容

点击Configuration

点击Localization

将语言的选项改为zh,点下save,你就可以看到中文界面了,至此,xwiki的安装工作就算完成了:)

XWIKI的搭建的更多相关文章

  1. linux xwiki搭建过程

    安装mysql数据库,并创建xwiki数据库及用户 mysql> create database xwiki; Query OK, 1 row affected (0.00 sec) mysql ...

  2. Xwiki平台Windows搭建(Tomcat7 + XWiki6.2 + MySQL5.5)

    背景介绍 国内xwiki安装使用资料较少,根据自己使用xwiki经验,总结出来,供参考,同时希望感兴趣的朋友能够一起讨论,XWiki是一个强大的Java开源的Wiki引擎. 它支持一些受欢迎的特性如: ...

  3. xwiki 知识管理系统

    搭建一个知识管理平台, 用于知识库管理/规范管理, 可以作wiki, 可以将word/excel等导入进去, 支持全文搜索, 可以记周报, 会议纪要. 现在有很多文档管理系统, 比如阿里的语雀.腾讯的 ...

  4. Online Judge(OJ)搭建(第一版)

    搭建 OJ 需要的知识(重要性排序): Java SE(Basic Knowledge, String, FileWriter, JavaCompiler, URLClassLoader, Secur ...

  5. Angular2入门系列教程1-使用Angular-cli搭建Angular2开发环境

    一直在学Angular2,百忙之中抽点时间来写个简单的教程. 2016年是前端飞速发展的一年,前端越来越形成了(web component)组件化的编程模式:以前Jquery通吃一切的田园时代一去不复 ...

  6. 总结:Mac前端开发环境的搭建(配置)

    新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...

  7. Angular企业级开发(5)-项目框架搭建

    1.AngularJS Seed项目目录结构 AngularJS官方网站提供了一个angular-phonecat项目,另外一个就是Angular-Seed项目.所以大多数团队会基于Angular-S ...

  8. 【分享】标准springMVC+mybatis项目maven搭建最精简教程

    文章由来:公司有个实习同学需要做毕业设计,不会搭建环境,我就代劳了,顺便分享给刚入门的小伙伴,我是自学的JAVA,所以我懂的.... (大图直接观看显示很模糊,请在图片上点击右键然后在新窗口打开看) ...

  9. 一起学微软Power BI系列-使用技巧(4)Power BI中国版企业环境搭建和帐号问题

    千呼万唤的Power BI中国版终于落地了,相信12月初的微软技术大会之后已经铺天盖地的新闻出现了,不错,Power BI中国版真的来了,但还有些遗憾,国际版的一些重量级服务如power bi emb ...

随机推荐

  1. PIC18F26K20

    Clock Four Crystal modes, Two External clock modes,  Two RC Oscillator, Internal oscillator, PLL

  2. Django——Model

    一. ORM 在 MVC 或者说 MTV 设计模式中,模型(M)代表对数据库的操作.那么如何操作数据库呢? 我们可以在 Python 代码中嵌入 SQL 语句. 但是问题又来了,Python 怎么连接 ...

  3. 洛谷P2756 飞行员配对方案问题 网络流_二分图

    Code: #include<cstdio> #include<queue> #include<vector> #include<cstring> #i ...

  4. 【LNOI2014】【BZOJ3626】NOIp2018模拟(三) LCA

    Description 给出一个n个节点的有根树(编号为0到n-1,根节点为0).一个点的深度定义为这个节点到根的距离+1.设$dep[i]$表示点i的深度,$lca(i,j)$表示i与j的最近公共祖 ...

  5. 51nod 1325 两棵树的问题(最大权闭合子图)

    首先如果点权全都为正,就可以直接选所有的点. 活在梦里.. 考虑枚举一个点\(i\),作为我们选择的集合中的一个点. 然后我们把另一个点\(j\)选入集合的时候必须把两棵树中\(i\)和\(j\)路径 ...

  6. java redistemplate

    //添加一个 key ValueOperations<String, Object> value = redisTemplate.opsForValue(); value.set(&quo ...

  7. webpack2.X、Vue学习以及将两者相结合

    在家的闲暇时间来完善自己的前端知识. 经过两三天的学习,按照webpack文档学习,vue文档学习,最后实现了两者结合的目标. webpack 按照网站上guide的流程依次学习 1.使用npm安装w ...

  8. 【转载】Failed to load class "org.slf4j.impl.StaticLoggerBinder".问题解决

    在进行hibernate配置好后运行测试类的时候出现: SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder" ...

  9. iOS 中client和server的 Web Service 网络通信 (1)

    当你打开你手机上新浪微博应用或者知乎应用是.你是否会去想这些显示在手机上的图片和数据时从哪里来的?又是通过如何的方法实现的?好.那么接下来就介绍是如何实现的.过程又是怎么样的.      当我们浏览着 ...

  10. m_Orchestrate learning system---二十六、动态给封装好的控件添加属性

    m_Orchestrate learning system---二十六.动态给封装好的控件添加属性 一.总结 一句话总结:比如我现在封装好了ueditor控件,我外部调用这个控件,因为要写数据到数据库 ...