centos6.4 搭建knowlededgeroot-1.0.4知识库平台
? ?最近接到一個(gè)任務(wù),要求搭建一個(gè)用于部門內(nèi)部業(yè)務(wù)知識(shí)規(guī)范管理和共享的平臺(tái),目的是把部門內(nèi)的FAQ知識(shí)規(guī)范化,保持版本統(tǒng)一。
需求如下:
能夠在線編輯資料并設(shè)置格式,頁面上能夠插入和顯示截圖。
能夠插入表格,并且最好能顯示顏色和邊框。
能上傳和下載附件。
并能夠給每個(gè)人設(shè)置只讀或修改等不同的權(quán)限。
在滿足以上要求的前提下,盡量讓界面操作簡(jiǎn)單,結(jié)構(gòu)清晰明了。
鄙人先后在自己的虛擬機(jī)上搭建并測(cè)試了HDwiki、JSPwiki 都不是太理想。后來發(fā)現(xiàn)knowledgeroot可以實(shí)現(xiàn)我上面的需求,而且界面比較簡(jiǎn)單。于是就用它搭建了我的知識(shí)庫平臺(tái)。下面把我利用knowledgeroot搭建內(nèi)部知識(shí)庫的步驟分享給大家。由于這個(gè)知識(shí)庫只是供部門內(nèi)部使用,服務(wù)器不能連外網(wǎng),所以搭建在內(nèi)網(wǎng)環(huán)境里。
實(shí)施:
一、搭建內(nèi)網(wǎng)本地的yum源,為安裝lnmp環(huán)境做準(zhǔn)備。見此文。centos6.4利用iso文件搭建本地yum源
二、部署lnmp環(huán)境:linux+nginx+mysql+php環(huán)境,這一步本文先不闡述。大家可以參考網(wǎng)上的一些方法。
三、部署knowledgeroot站點(diǎn)程序。
1、下載knowledgeroot-1.0.4程序。
去該網(wǎng)址http://www.knowledgeroot.org/下載最新的安裝包:knowledgeroot-1.0.4.tar.gz
同時(shí)在下面的頁面中下載ckeditor這個(gè)編輯器插件ckeditor_3.6.2.krx,用來替換knowledgeroot自帶的編輯器,該編輯器比自帶的編輯器要強(qiáng)大一些,功能更多一下,關(guān)于ckeditor的詳細(xì)介紹,請(qǐng)看Web 編輯器CKEditor 介紹。
2、將下載來的knowledgeroot-1.0.4.tar.gz上傳并解壓到服務(wù)器的web站點(diǎn)根目錄下。
往linux上傳文件大家都會(huì)的,我這里使用rz工具上傳,可我服務(wù)器上無法使用rz命令,是因?yàn)闆]有安裝rz命令相關(guān)的軟件包。那就加一個(gè)小插曲,把rz工具安裝上。(會(huì)上傳文件以及使用其他工具上傳的朋友略過。)
? ?a、查看rz命令屬于哪個(gè)軟件包。
[root@centos6~]# yum provides */rz
Loadedplugins: fastestmirror, security
Loadingmirror speeds from cached hostfile
lrzsz-0.12.20-27.1.el6.x86_64: The lrz and lsz modem communications programs
Repo ? ? ? ?: c6-media
Matchedfrom:
Filename ? ?: /usr/bin/rz
? ? ? ? b、安裝lrzsz-0.12.20-27.1.el6.x86_64工具包。
[root@centos6~]# yum install lrzsz -y
安裝完成。
此時(shí)就可以在遠(yuǎn)程的終端里輸入rz命令,系統(tǒng)會(huì)自動(dòng)彈出選擇上傳文件的選擇框,找到本地電腦上的文件,確定后就可以傳到當(dāng)前目錄。
解壓文件:
[root@centos6~]# tar zxvf knowledgeroot-1.0.4.tar.gz
tar:它似乎不像是一個(gè) tar 歸檔文件
tar:跳轉(zhuǎn)到下一個(gè)頭
tar:由于前次錯(cuò)誤,將以上次的錯(cuò)誤狀態(tài)退出
這里出錯(cuò)了,系統(tǒng)認(rèn)為該文件不是tar壓縮包,有點(diǎn)奇怪,那我們看看他到底是什么文件。
[root@centos6~]# file knowledgeroot-1.0.4.tar.gz
knowledgeroot-1.0.4.tar.gz:gzip compressed data, from Unix
原來他是gzip的壓縮文件,ok,那我們用gzip來解壓縮。
[root@centos6~]# gzip -d knowledgeroot-1.0.4.tar.gz
[root@centos6~]# ll
總用量13900
-rw-r--r-- ?1 root root 1986919 11月 ?2 01:06ckfinder_php_2.4.zip
-rw-r--r-- ?1 root root 11080018 11月 ?2 02:33 knowledgeroot-1.0.4.tar
此時(shí)發(fā)現(xiàn)原來的knowledgeroot-1.0.4.tar.gz 已經(jīng)變成knowledgeroot-1.0.4.tar文件了,接著再用tar來解壓,就順利成章的得到壓縮包里的文件了。
[root@centos6~]# tar xvf knowledgeroot-1.0.4.tar
[root@centos6 ~]# mv knowledgeroot-1.0.4/data/htdocs/www/ ? ? ?###將解壓后的目錄移動(dòng)到服務(wù)器的web站點(diǎn)的根目錄下,我的web站點(diǎn)根目錄是/data/htdocs/www/
3、配置虛擬主機(jī)站點(diǎn)。
我們確認(rèn)下站點(diǎn)的目錄。需要把這個(gè)路徑配置到nginx的配置文件中。
[root@centos6www]# ls /data/htdocs/www/knowledgeroot-1.0.4/
admin ? ? ? ? cache ?content.php ?doc ? ?extension ? icon.php ?p_w_picpaths ? index.php ? lib ? ? ? print.php ?update.php
ajax-xml.php ?config debug.php ? ?dumps ?favicon.ico icons ? ? include ?install.php move.php ?system ? ? uploads
[root@centos6www]# vi /usr/local/webserver/nginx/conf/nginx.conf
添加下面一部分信息:
server
{
listen80;
server_namewww.ycitzsk.com 192.168.0.109;
indexindex.html index.htm index.php;
root/data/htdocs/www;
location~ .*\.(php|php5)?$
{
#fastcgi_passunix:/tmp/php-cgi.sock;
fastcgi_pass127.0.0.1:9000;
fastcgi_indexindex.php;
includefcgi.conf;
}
location~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires30d;
}
location~ .*\.(js|css)?$
{
expires1h;
}
log_formatwwwlogs '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" $http_x_forwarded_for';
access_log/data/logs/wwwlogs.log wwwlogs;
}
修改完成測(cè)試一下nginx配置文件是否有語法錯(cuò)誤:
[root@centos6www]# /usr/local/webserver/nginx/sbin/nginx -t
theconfiguration file /usr/local/webserver/nginx/conf/nginx.conf syntax is ok
configurationfile /usr/local/webserver/nginx/conf/nginx.conf test is successful
測(cè)試ok,重新加載配置:
[root@centos6www]# /usr/local/webserver/nginx/sbin/nginx -s reload
[root@centos6 www]# cd/data/htdocs/www/knowledgeroot-1.0.4
[root@centos6knowledgeroot-1.0.4]# chmod -R 777 admin/
[root@centos6knowledgeroot-1.0.4]# chmod -R 777 config
[root@centos6knowledgeroot-1.0.4]# chmod -R 777 cache
4、開始安裝knowledgeroot:
在瀏覽器中輸入服務(wù)器的ip或域名及路徑,比如http://192.168.0.109/knowledgeroot-1.0.4/install.php回車就會(huì)出現(xiàn)安裝界面,如下,填寫相關(guān)信息。
輸入完信息后點(diǎn)擊最下面的“start intallation”完成安裝。
這里如果報(bào)錯(cuò)諸如“Could not connect to database! " 請(qǐng)檢測(cè)數(shù)據(jù)庫用戶名和密碼是否正確,可以先在服務(wù)器上用你的mysql帳號(hào)和密碼測(cè)試一下是否能夠鏈接。檢測(cè)帳號(hào)的授權(quán)信息等。
如果報(bào)錯(cuò)跟config目錄權(quán)限有關(guān),請(qǐng)檢查admin和config目錄的權(quán)限是否已經(jīng)設(shè)置為了777.
如果權(quán)限什么的都正常,就會(huì)返回下面的安裝成功的信息。并提示刪除install.php和update.php,
點(diǎn)擊最下面的“Link Backend: Backend”就可以跳轉(zhuǎn)到后臺(tái)管理頁面。如下:
(注意這里如果報(bào)錯(cuò)cache沒有寫入權(quán)限的話,請(qǐng)給cache目錄設(shè)置權(quán)限為777),刷新就可以出現(xiàn)登錄界面了。
輸入用戶名和密碼admin 登錄到后臺(tái)界面:在這個(gè)頁面可以查看和修改配置信息,也可以導(dǎo)入插件,添加帳號(hào)。
重新打開瀏覽器輸入ip或域名加路徑,登錄到前臺(tái)頁面:如下:
可以使用admin登錄進(jìn)去,點(diǎn)擊roots 就可以創(chuàng)建一級(jí)頁面,并可以設(shè)置權(quán)限,設(shè)置是否繼承權(quán)限到子頁面。
選中某個(gè)一級(jí)頁面,路徑那里會(huì)顯示當(dāng)前選中的頁面,點(diǎn)擊“增加新頁面”就可以在該一級(jí)頁面下創(chuàng)建二級(jí)頁面。
同樣的,選中某一級(jí)頁面,點(diǎn)擊“增加新的內(nèi)容”就可以打開內(nèi)容編輯頁面,這里可以編輯頁面內(nèi)容了。
5、個(gè)性化配置knowledgeroot。
原來安裝包創(chuàng)建的數(shù)據(jù)庫默認(rèn)使用瑞典語,這個(gè)很不好看,可以打開dumps/mysql.sql 文件進(jìn)行修改,將
ENGINE=MyISAM AUTO_INCREMENT=1
全部替換為
ENGINE=MyISAM AUTO_INCREMENT=1CHARACTERSET utf8 COLLATE utf8_unicode_ci
用下面的一行命令一次性修改完成:
sed ?-i ?'s/ENGINE=MyISAM AUTO_INCREMENT=1/ENGINE=MyISAMAUTO_INCREMENT=1\ CHARACTER SET utf8 COLLATE utf8_unicode_ci/g' ?dumps/mysql.sql
即可保證所有的表創(chuàng)建為UTF-8 格式的。
登錄管理后臺(tái):瀏覽器中輸入http://服務(wù)器站點(diǎn)ip或域名/admin例如:我的站點(diǎn)是http://192.168.0.109/admin/回車后就會(huì)出現(xiàn)登錄界面,輸入初始帳號(hào)和密碼都是admin,點(diǎn)擊登錄就會(huì)出現(xiàn)下面的界面。
如上圖所示,點(diǎn)擊左側(cè)的configure按鈕,右側(cè)就會(huì)出現(xiàn)當(dāng)前的配置詳情,可以根據(jù)自己的需求更改相應(yīng)的配置,雙擊等號(hào)下面的參數(shù)值就可以更改。修改后回車即時(shí)生效。也可以在服務(wù)器上站點(diǎn)目錄下的config目錄中修改app.ini文件,這個(gè)頁面就是調(diào)用的該文件。
以下是我的配置文件,應(yīng)該調(diào)試的時(shí)候更改了一些參數(shù),我把站點(diǎn)根目錄也改成了/data/htdocs/wiki/,結(jié)果如下:
[root@centos6wiki]# more /data/htdocs/wiki/config/app.ini
[base]
version= "1.0.4"
title = "IT運(yùn)維知識(shí)庫" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ##這里是瀏覽器標(biāo)簽欄上顯示的標(biāo)題,根據(jù)自己想顯示的標(biāo)題寫
cryptkey= "yourcryptkeyhere"
base_path= "/data/htdocs/wiki/" ? ? ? ? ? ? ? ? ? ?##這里是網(wǎng)站在服務(wù)器上存放的絕對(duì)路徑,根據(jù)自己實(shí)際情況填寫
base_url= "http://192.168.0.109/" ? ? ? ? ? ? ? ? ?##這里是訪問網(wǎng)站的url路徑,根據(jù)自己的實(shí)際情況填寫。
charset= "UTF-8" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ##這里是編碼
locale= "zh_CN" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ##默認(rèn)語言
showlogo= "1"
theme= "wordpress"
[admin]
loginhash= "f6fdffe48c908deb0f4c3bd36c032e72"
base_path= "/data/htdocs/wiki/admin/"
[upload]
url_suffix= "upload/"
path= "uploads/"
maxfilesize= "30720000"
[output]
compression= "1"
level= "6"
[db]
adapter= "mysql"
params.host= "127.0.0.1"
params.username= "admin"
params.password = "mysql_password"
params.dbname= "wiki"
encoding= ""
schema= ""
profiler= "1"
pconnect= ""
[session]
handle= "1"
lifetime= "60"
check_browser= "1"
check_ip= "1"
only_cookies= "1"
[login]
delay= "30"
max= "50"
[email]
notification= ""
html= "1"
[cache]
options.caching= ""
options.lifetime= "7200"
options.automatic_serialization= "1"
path= "cache/"
[log]
adapter= "file"
level= "info"
file= "log/knowledgeroot.log"
[translation]
adapter= "gettext"
folder= "system/language/"
[development]
runtime= ""
toolbar= ""
sqldebug= ""
[tree]
expandall= "1"
type= "static"
ajax= "1"
edittooltiptext= "1"
order= ""
showcounter= "1"
defaultlayout= ""
defaultlayoutarray= ""
symlink= "1"
[content]
showtitle= "1"
showtitledetails= "1"
collapsecontent= "1"
statusbar= "1"
autosave= "1"
autosaveevery= "30"
[menu]
context= "1"
dragdrop= "1"
type= "static"
showsourceforgelogo= ""
[misc]
defaultpage= "1"
recursivdelete= "2"
pagealias.use= "1"
pagealias.static= "1"
pagealias.rights= "2"
langdropdown= "0"
download.static= ""
subinheritrightsonmove= ""
showpagebottomnavi= "1"
[javascript]
cdn= ""
cdn_url= "http://ajax.googleapis.com/ajax/libs/dojo/1.6.2/dojo/dojo.xd.js"
cdn_css_base_url= "http://ajax.googleapis.com/ajax/libs/dojo/1.6.2/"
6、安裝歷史版本插件,使其支持歷史版本。
從http://www.knowledgeroot.org/extensions.html網(wǎng)站下載history.krx插件,并在后臺(tái)界面import頁面中導(dǎo)入history.krx插件,install的時(shí)候會(huì)向數(shù)據(jù)庫中增加一個(gè)表,可能會(huì)因?yàn)?/span>mysql版本的問題,導(dǎo)致表格添加失敗,這樣在打開頁面中的歷史版本的時(shí)候就會(huì)有報(bào)錯(cuò)。如果這樣,就手動(dòng)在mysql中執(zhí)行下面的sql語句,(相對(duì)與history插件原始的sql建表語句主要就是更換了最后面一行的sql語句)手動(dòng)創(chuàng)建數(shù)據(jù)庫表kx_ext_history。這樣歷史版本就沒問題了。
CREATETABLE `kx_ext_history` (
`id` int(11) NOT NULL auto_increment,
`contentid` int(11) NOT NULL,
`version` int(11) NOT NULL,
`title` varchar(255) default NULL,
`content` mediumtext NOT NULL,
`type` varchar(255) NOT NULL default 'text',
`lastupdatedby` int(11) NOT NULL default '0',
`lastupdated` timestamp NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8COLLATE=utf8_unicode_ci;
7、將ckeditor整合到knowledgeroot中,替換默認(rèn)編輯器,并將ckfinder和ckeditor組合起來,實(shí)現(xiàn)文件上傳、圖片上傳功能。
參考第三部分的第1步,下載并安裝ckeditor插件,導(dǎo)入ckeditor插件并啟用,替換默認(rèn)的編輯器。如下圖:
導(dǎo)入成功后點(diǎn)擊“extensions”在右側(cè)可以看到已經(jīng)導(dǎo)入的插件,點(diǎn)擊install 并enable,就可以啟用相應(yīng)的插件。
此時(shí)重新登錄前臺(tái)頁面,打開增加新內(nèi)容頁面,就可以看到編輯器已經(jīng)替換為ckeditor了,功能比原來強(qiáng)大了好多。
轉(zhuǎn)載于:https://blog.51cto.com/51longge/1330951
與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的centos6.4 搭建knowlededgeroot-1.0.4知识库平台的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Resin3.19 连接池配置
- 下一篇: jQuery插件开发中$.extend和