# Dokuwiki (正體中文)

## 安裝 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

This article or section is out of date.

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 主站 會有你可能需要的全部資訊與幫助。

Categories:

- 正體中文
- Office (正體中文)

Hidden category:

- Pages or sections flagged with Template:Out of date