您好,登錄后才能下訂單哦!
開源的Wiki引擎Apache JSPWiki,基于標(biāo)準(zhǔn) JEE 組件(Java、servlet、JSP)構(gòu)建,支持模板、CSS樣式、插件、細(xì)粒度安全控制、autocomplete等功能,簡單易用、功能豐富,非常適合用來搭建簡易的企業(yè)wiki平臺。
推薦部署在Tomcat服務(wù)器,要求Tomcat 8.x或更高、JDK 1.8或更高版本。安裝步驟如下:
選擇Apache mirror地址,進(jìn)入binaries/webapp/目錄,下載JSPWiki.war。
安裝程序?qū)言O(shè)置寫到 $TOMCAT_HOME/temp/jspwiki-custom.properties,還會創(chuàng)建一個(gè)admin帳戶(密碼隨機(jī)生成)和一個(gè) Admin 組,注意保存頁面提示的密碼。
您可以在系統(tǒng)屬性或web.xml的context-param內(nèi)定義jspwiki.custom.config來指定jspwiki-custom.properties的位置。
也可以將jspwiki-custom.properties移動到$TOMCAT_HOME/webapp/appname/WEB-INF目錄,但這不利于升級。
默認(rèn),創(chuàng)建的用戶、組保存在WEB-INF目錄下的userdatabase.xml、groupdatabase.xml文件內(nèi)。
jspwiki-custom.properties內(nèi)容如下:
#Wed Feb 26 23:19:26 CST 2020
jspwiki.basicAttachmentProvider.storageDir=C\:\\\\Work\\\\wikipages
jspwiki.fileSystemProvider.pageDir=C\:\\\\Work\\\\wikipages
jspwiki.pageProvider=VersioningFileProvider
jspwiki.applicationName=iTRunnerWiki
jspwiki.workDir=C\:\\\\\\\\Work\\\\\\\\apache-tomcat-9.0.14\\\\\\\\temp
為了便于升級,最好在jspwiki-custom.properties內(nèi)指定用戶、組的保存位置:
jspwiki.xmlUserDatabaseFile
jspwiki.xmlGroupDatabaseFile
也可以使用數(shù)據(jù)庫:
jspwiki.userdatabase = org.apache.wiki.auth.user.JDBCUserDatabase
jspwiki.groupdatabase = org.apache.wiki.auth.authorize.JDBCGroupDatabase
下載您選擇語言的wikipages,然后解壓將內(nèi)容拷貝到前面指定的jspwiki.fileSystemProvider.pageDir目錄。啟動tomcat。
您將進(jìn)入Main頁面,可以學(xué)習(xí)JSPWiki知識,可以編輯這些頁面。
要查看jspwiki.properties支持的配置項(xiàng),可以訪問官網(wǎng),也可以解壓WEB-INF/lib/jspwiki-main.jar,ini目錄內(nèi)含有此文件,其中包含所有屬性。
下面列出一些常用的屬性:
jspwiki.baseURL=http://www.itrunner.org/wiki
# If this property is set to "true", then page titles are rendered
# using an extra space between every capital letter.
jspwiki.breakTitleWithSpaces=true
# Set the default page
jspwiki.frontPage=Main
# Set the default template used by the Wiki engine
jspwiki.templateDir=default
# Set position of the favorites menu (aka left menu, sidebar)
# The value determines the css-class used to change the position of the #favorites block
# Possible values: fav-left or fav-right
# Default value is fav-left
jspwiki.defaultprefs.template.orientation=fav-right
#
# By default JSPWiki accepts all types of attachments. However, you
# can allow some types only, or forbid some other types.
# These allow/forbid statements are not enforced for users with AdminPermissions.
#
# These both are space-separated lists of file suffixes
#
# Example: Allow only PNG, JPG, ZIP and JAR file attachments
jspwiki.attachment.allowed=.png .jpg .zip .jar
# Example: Forbid HTML, PHP, ASP and EXE
jspwiki.attachment.forbidden=.html .htm .php .asp .exe
# Example: Attachment links to HTML, HTM and MP3 files would force a download rather then opening the attachment
jspwiki.attachment.forceDownload= .html .htm
# Inline all JPG files, PNG files, GIF files
jspwiki.translatorReader.inlinePattern.1 = *.jpg
jspwiki.translatorReader.inlinePattern.2 = *.png
jspwiki.translatorReader.inlinePattern.3 = *.gif
JSPWiki 包含一套豐富、靈活的安全功能。
默認(rèn)策略文件jspwiki.policy位于WEB-INF目錄下,可以使用配置屬性指定自定義策略文件位置:
jspwiki.policy.file=jspwiki-custom.policy
JSPWiki Security支持Role、Group,其中Role包含以下五種:
最初創(chuàng)建的admin用戶屬于Admin角色、Admin組,擁有全部權(quán)限。
初始策略很寬松,匿名用戶可以注冊、登錄,可以查看、修改、創(chuàng)建頁面。默認(rèn)策略如下表:
Permission | Anonymous users | Asserted users (with cookie) | Authenticated users | Admin group |
---|---|---|---|---|
View all pages | x | x | x | x |
Edit all pages | x | x | x | x |
Upload attachments to all pages | x | x | ||
Modify all pages (edit + upload) | x | x | ||
Comment on all existing pages | x | x | x | x |
Create new pages | x | x | x | x |
Rename all pages | x | x | ||
Delete all pages | x | |||
View all groups | x | x | x | |
Edit all groups | x | x | ||
Rename all groups | x | x | ||
Delete all groups | x | |||
Create new groups | x | x | ||
Create profile | x | x | x | x |
Edit user preferences | x | x | ||
Edit user profile | x | x |
策略分為四種主要權(quán)限類型:
某些權(quán)限意味著其他權(quán)限:
除在policy文件統(tǒng)一配置權(quán)限外,還可以在每個(gè)頁面內(nèi)單獨(dú)設(shè)置權(quán)限,如:
[{ALLOW edit Admin}]
[{ALLOW view All}]
可將權(quán)限授予角色、組或用戶。
安全原因,AdminPages默認(rèn)是未啟用的。要啟用添加以下配置:
jspwiki-x.adminui.enable=true
jspwiki-x.securityconfig.enable=true
有兩個(gè)管理頁面,路徑分別為:
Admin.jsp可以創(chuàng)建、編輯用戶和組:
SecurityConfig.jsp檢查 JSPWiki 的安全配置,允許查看當(dāng)前 Wiki 中的用戶、組和 ACL 配置:
JSPWiki提供了友好的編輯界面:
支持兩種模式:plain和wysiwyg,默認(rèn)為plain。點(diǎn)擊水滴按鈕彈出工具欄:
選中某一工具會輸出相應(yīng)的wiki語句,plugin、style、font、special character、ACL等工具還會顯示支持的選項(xiàng),在您熟悉wiki語法后,可以脫離工具欄,直接輸入時(shí)同樣如此,非常方便。
編輯wiki時(shí)點(diǎn)擊Help會顯示如下信息:
---- 水平分隔線
\\ 強(qiáng)制斷行
[link] 創(chuàng)建 "link" 的超鏈接,其中 "link" 可以是內(nèi)部 Wiki 名稱(Wiki 頁面名稱)或者外部鏈接(http://)
[text|link] 創(chuàng)建一個(gè)顯示文本和實(shí)際超鏈接不同的超鏈接,其中“text”為要 顯示的文本;“l(fā)ink”為實(shí)際的超鏈接。
[text|wiki:link] 創(chuàng)建一個(gè)顯示文本和實(shí)際超鏈接不同的超鏈接,并且超鏈接指向指定的 Wiki(比如 JSPWiki、MediaWiki 等等)。
這種鏈接支持 Wiki 之間的鏈接。
* 創(chuàng)建一個(gè)項(xiàng)目列表('*' 必需為所在行第一個(gè)字符)。用連續(xù)多個(gè)星號(**)表示次級項(xiàng)目符號。
# 創(chuàng)建一個(gè)編號列表('#' 必需為所在行第一個(gè)字符)。用連續(xù)多個(gè)#號(##,###)表示縮進(jìn)/次級編號。
!, !!, !!! 在行首加上感嘆號(?。┥蓸?biāo)題。感嘆號越多表示標(biāo)題越大。
__text__ 文本加粗。
''text'' 給文本斜體效果(注意是單引號 ')
{{text}} 使文本變?yōu)榈瓤钭煮w。
;term:def 用 'def' 定義 'term'。用空的 'term' 可以表示簡短注釋(如,;:Created on 2008/02/28)。
|text|more text 生成表格。兩條豎線“||”表示表格標(biāo)題。
更多的Wiki Syntax請查看官網(wǎng)。
CSS styles
Following styles are supported by the standard jspwiki.css file:
Dynamic styles
例如:
JSPWiki官方頁面的LeftMenu,組合使用了%%list-unstyled-hover,%%accordion:
%%list-unstyled-hover
%%accordion
!General
* [News]
* [Getting Started]
* [Wiki Syntax]
* [Downloads]
* [ReleaseNotes|NewIn]
* [FAQ]
* [License|http://www.apache.org/licenses/]
!Community
* [Getting Started]
* [Getting Involved]
* [Documentation]
* [Legacy site|http://www.ecyrd.com/JSPWiki/]
* [Mailing lists|Mailing Lists]
* [Social media|Social Media]
* [People]
!Development
* [Browse sources|https://github.com/apache/jspwiki]
* [JavaDoc|http://jspwiki.apache.org/apidocs/index.html]
* [Binary compatibility reports|http://jspwiki.apache.org/japicmp/index.html]
* [Get and build source|Building from source code]
* [Issue tracker|https://issues.apache.org/jira/browse/JSPWIKI]
* [Jenkins build|https://builds.apache.org/job/JSPWiki/]
* [Sonar Analysis|https://sonarcloud.io/dashboard?id=jspwiki-builder]
* [ChangeLog|https://jspwiki.apache.org/development/changelog.html]
* [Other stuff]
!PMC
* [How to release]
* [Board Reports]
!Special Pages
* [Recent Changes]
* [Search]
* [Page Index|PageIndex]
* [SystemInfo]
!Referenced by
[{ReferringPagesPlugin max=20, maxwidth=50}]
/%
/%
無邊框表格:
%%table-noborder
|| Column 1 || Column 2 || Column 3
| Text | Text | Text
/%
JSPWiki支持自定義樣式,比如:
%%add-css
table {
margin: 20px;
width: 100%;
text-align: center;
}
table td {
text-align: center;
}
/%
還可以添加屬性, 如:
[{Image src='Main/tool.JPG' style='text-align: center; width: 800px;'}]
JSPWiki提供很多的插件,在此不一一列舉,比如常用的目錄插件 [{TableOfContents}]、ACL插件 [{ALLOW plugin principal }]、Image插件 [{Image src='image.jpg'}]。
預(yù)留頁面是一些特殊用途的固定名稱頁面,比如CopyrightNotice、LeftMenu、LeftMenuFooter,在Wiki Template中會用到。
當(dāng)前JSPWiki提供了default、210、raw、reader四套模板,位于war的templates目錄下,用戶可自定義模板。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。