曾經(jīng)滄海難為水,除卻巫山不是云。
一、 Wiki.js 安裝
1.下載最新版本的Wiki.js:
Invoke-WebRequest -Uri "https://github.com/Requarks/wiki/releases/download/2.1.113/wiki-js-windows.tar.gz" -OutFile "wiki-js.tar.gz"
2.將包解壓縮到您選擇的最終目的地:如 D:\wiki
3.將示例配置文件 config.sample.yml 重命名為 config.yml:
Rename-Item -Path config.sample.yml -NewName config.yml
4.使用您喜歡的文本編輯器(例如記事本)編輯配置文件嫉入,并填寫(xiě)數(shù)據(jù)庫(kù)和端口設(shè)置(配置參考)
本次操作配置如下:
端口號(hào)配置:
port: 3000
數(shù)據(jù)庫(kù)配置:
db:
type: mysql
# PostgreSQL / MySQL / MariaDB / MS SQL Server only:
host: #你的host(需要填寫(xiě))
port: #你的port(需要填寫(xiě))
user: #你的user(需要填寫(xiě))
pass: #你的pass(需要填寫(xiě))
db: #你的db(需要填寫(xiě))
ssl: false
git 賬號(hào)配置:(http)
# ---------------------------------------------------------------------
# Git Connection Info
# ---------------------------------------------------------------------
git:
url:#你的git倉(cāng)庫(kù)地址(需要填寫(xiě))
branch: master
auth:
# Type: basic or ssh
type: basic
# Only for Basic authentication:
username:#你的git用戶(hù)名(需要填寫(xiě))
password: #你的git密碼(需要填寫(xiě))
# Only for SSH authentication:
# privateKey: /etc/wiki/keys/git.pem
sslVerify: true
# Default email to use as commit author
serverEmail: #你的git郵箱(需要填寫(xiě))
# Whether to use user email as author in commits
showUserEmail: true
5.運(yùn)行wiki需要node.js環(huán)境:https://nodejs.org/zh-cn/
notepad .\config.yml
6.僅適用于SQLite安裝:(否則跳過(guò)此步驟)獲取SQLite3的本機(jī)綁定:
npm rebuild sqlite3
7.運(yùn)行Wiki.js
node server
8.等待直到邀請(qǐng)您打開(kāi)瀏覽器中的設(shè)置頁(yè)面垫竞。
9.完成安裝向?qū)б酝瓿砂惭b引有。
二、 Wiki.js界面管理:
1 Global
- Navigation Menu -轉(zhuǎn)到主頁(yè),瀏覽Wiki結(jié)構(gòu)或按標(biāo)簽瀏覽的菜單崇堵。
- Global Navigation -永久性導(dǎo)航菜單,顯示在所有頁(yè)面上摸柄。通常由重要頁(yè)面或指向外部網(wǎng)站的鏈接組成尿贫。
- Global Search -通過(guò)執(zhí)行搜索快速找到頁(yè)面。
- Create New Page -創(chuàng)建一個(gè)新頁(yè)面彰亥。
- User Menu -用戶(hù)特定的操作,例如視圖配置文件,管理和注銷(xiāo)奏赘。
2 Per Page
- Page Actions -當(dāng)前頁(yè)面上的操作列表剂癌,例如“編輯”淤翔,“移動(dòng)”抡谐,“刪除”惫撰,“歷史記錄”等棍郎。
- Breadcrumbs -當(dāng)前頁(yè)面的完整路徑午笛。表示文件夾結(jié)構(gòu)我碟。
- Table of Contents -當(dāng)前頁(yè)面的各個(gè)部分。根據(jù)內(nèi)容中的標(biāo)題姚建。
- Page Tags -與當(dāng)前頁(yè)面關(guān)聯(lián)的標(biāo)簽矫俺。通過(guò)單擊標(biāo)簽查看相關(guān)頁(yè)面。
- Author -查看作者和頁(yè)面上次修改的日期桥胞。
- Social Links -當(dāng)前頁(yè)面的共享/打印鏈接恳守。
- Edit Page / Page Actions -快速訪(fǎng)問(wèn)菜單可在當(dāng)前頁(yè)面上編輯或執(zhí)行其他操作。
三贩虾、 Wiki.js文章編寫(xiě):
1. 創(chuàng)建新頁(yè)面
為了創(chuàng)建新頁(yè)面催烘,請(qǐng)單擊頁(yè)面右上角的“ 新建頁(yè)面”按鈕;
2. 選擇要為其創(chuàng)建頁(yè)面的語(yǔ)言(默認(rèn)選擇當(dāng)前語(yǔ)言環(huán)境)缎罢。
3. 輸入要?jiǎng)?chuàng)建的頁(yè)面的完整路徑伊群。
- 該路徑不應(yīng)包含空格(改為使用破折號(hào))考杉,不包含句點(diǎn)并且應(yīng)由URL安全字符組成。
- 請(qǐng)勿在斜杠后面加上斜線(xiàn)舰始。
- 您無(wú)需創(chuàng)建文件夾崇棠。輸入您要?jiǎng)?chuàng)建的完整路徑,文件夾將自動(dòng)創(chuàng)建丸卷。例如枕稀,輸入universe/planets/earth自動(dòng)創(chuàng)建Universe和Planets子文件夾。
4. 單擊選擇繼續(xù)谜嫉。以上4步如圖2:
5. 選擇編輯器
創(chuàng)建新頁(yè)面時(shí)萎坷,將出現(xiàn)以下對(duì)話(huà)框提示:
Wiki.js根據(jù)您要編寫(xiě)的內(nèi)容類(lèi)型或只是用戶(hù)首選項(xiàng)提供了各種編輯器。開(kāi)發(fā)人員通常會(huì)使用Markdown編輯器沐兰,而非技術(shù)用戶(hù)則更喜歡Visual Editor哆档。
有關(guān)編輯器及其使用方法的完整列表,請(qǐng)參閱“ 編輯器”部分住闯。
6. 輸入頁(yè)面數(shù)據(jù)
選擇編輯器后瓜浸,系統(tǒng)會(huì)提示您“頁(yè)面數(shù)據(jù)”對(duì)話(huà)框:
輸入頁(yè)面的標(biāo)題,描述和標(biāo)簽比原。
最后插佛,單擊“ 確定”關(guān)閉對(duì)話(huà)框并開(kāi)始編寫(xiě)!
注:您以后可以通過(guò)單擊頁(yè)面右上角的“ 頁(yè)面”按鈕返回到“頁(yè)面元數(shù)據(jù)”對(duì)話(huà)框春寿。
7. 保存
直到您單擊“ 創(chuàng)建”按鈕(位于頁(yè)面右上角)朗涩,才會(huì)創(chuàng)建頁(yè)面。它會(huì)被保存并呈現(xiàn)绑改,之后您將自動(dòng)重定向到最終結(jié)果谢床。只需單擊編輯按鈕即可返回編輯!
四厘线、 Wiki.js文件夾管理:
1.資料夾結(jié)構(gòu)
Wiki.js沒(méi)有傳統(tǒng)意義上的文件夾結(jié)構(gòu)识腿。您無(wú)需創(chuàng)建文件夾即可創(chuàng)建新頁(yè)面。而是直接在您選擇的路徑上創(chuàng)建頁(yè)面造壮。
例如渡讼,為了在創(chuàng)建一個(gè)頁(yè)面/universe/planets/earth,你并不需要?jiǎng)?chuàng)建的文件夾universe耳璧,并planets在首位成箫。他們會(huì)自動(dòng)推斷出來(lái)。
該系統(tǒng)允許更大的靈活性和更少的頁(yè)面之間依賴(lài)性旨枯。但是蹬昌,這并不意味著您不能使用傳統(tǒng)的文件夾系統(tǒng)。創(chuàng)建和移動(dòng)頁(yè)面時(shí)攀隔,文件夾結(jié)構(gòu)仍然可用皂贩。唯一的區(qū)別是您不必管理文件夾栖榨,它們是從頁(yè)面路徑自動(dòng)推斷出來(lái)的。
2.面包屑
每頁(yè)頂部顯示的面包屑欄是根據(jù)路徑自動(dòng)生成的明刷。
3.標(biāo)簽
標(biāo)簽是對(duì)頁(yè)面進(jìn)行分類(lèi)并輕松查找相關(guān)內(nèi)容的好方法婴栽。與使用復(fù)雜的文件夾系統(tǒng)對(duì)內(nèi)容進(jìn)行分類(lèi)相比,它們是一種更精簡(jiǎn)的選擇辈末。標(biāo)簽是貼在頁(yè)面上的簡(jiǎn)單標(biāo)簽愚争。
4.設(shè)置標(biāo)簽
可以將多個(gè)標(biāo)簽添加到頁(yè)面。
例如本冲,對(duì)于一個(gè)關(guān)于城市頁(yè)面Montreal准脂,你可以添加標(biāo)簽cities,canada檬洞,north-america。這些標(biāo)簽隨后可用于快速查找頁(yè)面沟饥。通過(guò)按canada和進(jìn)行瀏覽cities添怔,因?yàn)轫?yè)面上同時(shí)存在這兩個(gè)標(biāo)簽,所以Montreal頁(yè)面將出現(xiàn)在結(jié)果中贤旷。
您可以隨時(shí)在頁(yè)面上添加或刪除更多標(biāo)簽广料。
5.瀏覽標(biāo)簽
使用按標(biāo)簽瀏覽鏈接(位于搜索欄旁邊或在導(dǎo)航菜單中)可查看Wiki中所有可用標(biāo)簽的列表。
選擇一個(gè)或多個(gè)標(biāo)簽以查看與所選內(nèi)容匹配的頁(yè)面列表幼驶。
五艾杏、 Wiki.js左標(biāo)題欄link:
手動(dòng)輸入文章地址即可生效地址。
六盅藻、 Wiki.js文章權(quán)限管理:
1.Wiki.js的權(quán)限系統(tǒng)基于4個(gè)概念:
- 團(tuán)體
- 用戶(hù)數(shù)
- 權(quán)限
- 頁(yè)面規(guī)則
一個(gè)組包含多個(gè)用戶(hù)购桑,一組權(quán)限和一個(gè)頁(yè)面規(guī)則列表。
組定義了用戶(hù)可以看到的內(nèi)容以及他可以做什么氏淑。這可以通過(guò)使用2個(gè)概念來(lái)實(shí)現(xiàn):全局權(quán)限和頁(yè)面規(guī)則勃蜘。
一個(gè)全局權(quán)限給予用戶(hù)執(zhí)行一個(gè)非常具體的行動(dòng)的權(quán)利。例如假残,全局權(quán)限r(nóng)ead:pages允許用戶(hù)查看頁(yè)面缭贡,而全局權(quán)限write:assets允許用戶(hù)上載圖像和文件。這些全局權(quán)限充當(dāng)主開(kāi)關(guān)辉懒,以允許或拒絕 Wiki上的特定操作阳惹。
列1:我想讓用戶(hù)看不到主頁(yè):點(diǎn)擊系統(tǒng)閱讀組,關(guān)掉這個(gè)開(kāi)關(guān)眶俩。
列2:我想讓登錄的用戶(hù)看不到主頁(yè):在用戶(hù)組內(nèi)組莹汤,關(guān)掉閱讀權(quán)限即可。
雖然 global的權(quán)限是很大的一個(gè)限制用戶(hù)只能執(zhí)行一組特定的動(dòng)作仿便,但它缺乏的控制体啰,其中應(yīng)用這些權(quán)限攒巍。例如,您可能希望用戶(hù)能夠查看下方的頁(yè)面荒勇,/cities但不能查看下方的頁(yè)面/secret柒莉。這是頁(yè)面規(guī)則起作用的地方放椰。
2.頁(yè)面規(guī)則——指定的確切位置權(quán)限德频。
讓我們使用以下示例: 我們希望XYZ組的用戶(hù)能夠查看頁(yè)面和查看路徑完全位于的資產(chǎn)/cities/montreal。
該頁(yè)面規(guī)則將定義為:
- 允許或拒絕: Allow
- 權(quán)限: read:pages, read:assets
- 規(guī)則模式: Path matches exactly...
- 規(guī)則值: /cities/montreal
如果將所有概念結(jié)合在一起睬捶,該小組將:
- 有一個(gè)或多個(gè)用戶(hù)
- 具有全局權(quán)限r(nóng)ead:pages并read:assets啟用
- 具有Allow權(quán)限的頁(yè)面規(guī)則仅偎,read:pages, read:assets其中Path matches exactly.../cities/montreal
規(guī)則以什么順序應(yīng)用跨蟹?
規(guī)則按照路徑特異性的順序應(yīng)用。更精確的路徑將始終覆蓋定義不明確的路徑橘沥。
例如窗轩,/geography/countries將覆蓋/geography。
當(dāng)兩個(gè)規(guī)則具有相同的特異性時(shí)座咆,優(yōu)先級(jí)從最低到最高給出如下:
- 路徑從...開(kāi)始(最低)
- 路徑以...結(jié)尾
- 路徑匹配正則表達(dá)式...
- 路徑正好... (最高)
有2個(gè)預(yù)定義且無(wú)法刪除的系統(tǒng)組:其他規(guī)則組可以自己創(chuàng)建痢艺,也可以從外部身份驗(yàn)證系統(tǒng)預(yù)授權(quán)用戶(hù)。
七介陶、 Wiki.js git同步配置(ssh):
您必須在系統(tǒng)上安裝Git 2.7.4或更高版本才能啟用此模塊堤舒!
1.生成新SSH秘鑰
ssh-keygen -t rsa -b 4096
當(dāng)提示您保存生成的文件時(shí),按Ente鍵哺呜。(默認(rèn)在C:\Users\Joe.ssh)
將密碼短語(yǔ)留空舌缤,然后按兩次Enter鍵。受密碼保護(hù)的密鑰不起作用某残。
在Windows上国撵,您可以使用Git Bash或Linux的Windows子系統(tǒng)(WSL)發(fā)行版(例如Windows的Ubuntu)來(lái)運(yùn)行上述命令。您也可以使用puttygen實(shí)用程序手動(dòng)生成密鑰驾锰。
2. 將密鑰添加到GitHub
3.. 配置Wiki.js
如何強(qiáng)制進(jìn)行手動(dòng)同步卸留?
將Git模塊設(shè)置選項(xiàng)卡加載到管理區(qū)域(在Storage下方),滾動(dòng)到頁(yè)面的最底部椭豫,然后單擊Force Sync操作卡上的Run按鈕耻瑟。
取次花叢懶回顧,半緣修道半緣君