DokuWiki (正體中文)

From ArchWiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

安裝 DokuWiki

DokuWiki 是什麼?

"DokuWiki 是一個讓使用者能建立出豐富文件庫,並與標準相容且易用的wiki系統。它提供環境給個人、團隊或公司使用一種簡單但拋耳否的語法格式來創作與協作,並確保檔案資料在wiki之外也能維持內容的結構與可讀性。"

"無次數限制的頁面修訂可讓頁面恢復到先前任一版本,資料也以純文字檔儲存,無需使用資料庫。拋耳否的外掛架構讓系統核心得以擴充與強化。看看功能特色章節瞭解DokuWiki所提供功能的完整描敘。"[1]

另一方面來說,DokuWiki是個由PHP程式語言所編寫、可不使用資料庫的wiki系統。

想看看一個在跑的例子?

說在前頭

接下來的內容會指引你設置DokuWiki在html目錄之下。

若有人可把vhost設置步驟加入的話,請覺得免費去加進來。

lighttp 筆記

更多細節請看 Lighttpd#FastCGI

html 目錄位於 /srv/http 。這目錄可能不是預設就被建立的,沒有你可以自己產生它。

 #mkdir -p /srv/http

lighttp 也會產生或使用 http:http 使用者帳號與群組。

 #chown http:http /srv/http

所有這些設定都能在這個檔案中作修改

 /etc/lighttpd/lighttpd.conf

DokuWiki 筆記

DocuWiki 部份外掛會尋找網頁伺服器的根目錄,而不是DokuWiki的根目錄這會導致一些問題發生。 所有預設外掛都能用下面的方法安裝。

安裝 lighttp

PHP, lighttp, 還有 fastcgi

Tango-view-refresh-red.pngThis article or section is out of date.Tango-view-refresh-red.png

Reason: please use the first argument of the template to provide a brief explanation. (Discuss in Talk:DokuWiki (正體中文))

安裝 PHP Lighttpd#FastCGI

 #pacman -S lighttpd fcgi php-cgi

加 lighttpd 到你的 rc.conf 裡

 DAEMONS=(syslog-ng network netfs crond lighttpd)

編輯你的 /etc/hosts.allow (加下面這一行)

 lighttpd:    ALL

啟動你的網頁伺服器 (sanity check)

 #/etc/rc.d/lighttpd start

建測試文件

 #echo "Testing lighttpd" > /srv/http/index.html

開瀏覽器到 http://127.0.0.1/,你應該看到測試文件內容。

要是試了沒有用(也檢查過):

chown -R http:http /var/run/lighttpd/

停掉網頁伺服器

 #/etc/rc.d/lighttpd stop

組態配置

去註解 /etc/lighttpd/lighttpd.conf 裡的這幾行

"mod_fastcgi"
fastcgi.server             = ( ".php" =>
                               ( "localhost" =>
                                 (
                                   "socket" => "/var/run/lighttpd/php-fastcgi.socket",
                                   "bin-path" => "/usr/bin/php-cgi"
                                 )
                               )
                            )

裝上 DokuWiki

下載最新版

到網站 DokuWiki download 拿到最新版

 #tar -C /srv/http -zxvf dokuwiki*.tgz
 #mv /srv/http/dokuwiki-DATE /srv/http/dokuwiki

預備安裝的檔案

chown DokuWiki 的檔案

 #chown -R http:http dokuwiki/

(http 是 lighttp 的預設啟動帳號,如果你有改過,把上面指令裡的 user:group 改成 lighttp 指定的 user:group)

DokuWiki Specific lighttp Configuration

編輯 /etc/lighttpd/lighttpd.conf 依照 dokuwiki instructions (可能會包含更新過的資訊)。

在這幾行下面:

$HTTP["url"] =~ "\.pdf$" {
  server.range-requests = "disable"
}

加上這些內容:

# subdir of dokuwiki
# comprised of the subdir of the root dir where dokuwiki is installed
# in this case the root dir is the basedir plus /htdocs/
# Note: be careful with trailing slashes when uniting strings.
# all content on this example server is served from htdocs/ up.
#var.dokudir = var.basedir + "/dokuwiki"
var.dokudir = server.document-root + "/dokuwiki"

# make sure those are always served through fastcgi and never as static files
# deny access completly to these
$HTTP["url"] =~ "/\.ht" { url.access-deny = ( "" ) }
$HTTP["url"] =~ "/_ht" { url.access-deny = ( "" ) }
$HTTP["url"] =~ "^" + var.dokudir + "/bin/"  { url.access-deny = ( "" ) }
$HTTP["url"] =~ "^" + var.dokudir + "/data/" { url.access-deny = ( "" ) }
$HTTP["url"] =~ "^" + var.dokudir + "/inc/"  { url.access-deny = ( "" ) }
$HTTP["url"] =~ "^" + var.dokudir + "/conf/" { url.access-deny = ( "" ) }

這些項目給 dokuwiki 設定基本保全。 lighttpd 不會用到像 apache 的 .htaccess 檔案。 你*可以*不安裝這些設定,但*絕不*建議這麼做。

重新啟動 lighttp

開網頁伺服器

 #/etc/rc.d/lighttpd start

Install DokuWiki

開瀏覽器到

 http://127.0.0.1/dokuwiki/install.php

後安裝

打掃乾淨

設定好組態配置後移除 install.php 檔案!

 #rm /srv/http/dokuwiki/install.php

裝外掛

許多社群製作的外掛可以在這找到 here 它們可以從網頁界面的 Admin 選單加掛(更新也是)。

要備份

如果沒有用資料庫的話備份DokuWiki沒什麼。全部的頁面都是純文字,靠 tar 或 rsync 就能備份。

目前版本(2008-05-05)的目錄結構:

 /dokuwiki/data/  =>  所有使用者建立的資料
 /dokuwiki/lib/plugins/  =>  所有使用者加入的外掛

延伸閱讀

DokuWiki 主站 會有你可能需要的全部資訊與幫助。