CCCA wiki

交通大學校園電腦社群策進會

使用者工具

網站工具


側欄

側邊欄

ubuntu18上安裝dokuwiki

在 ubuntu 18.04 上安裝 dokuwiki

本頁面記錄 gholk 在 ubuntu 18.04 上安裝 dokuwiki 的過程。

雖然 debian 和 ubuntu 都有事先打包好的 dokuwiki 套件, 但我筆電還是 old stable , dokuwiki 的包不知道為什麼消失了。 就在研究室的 ubuntu 18.04 上裝了包好的 dokuwiki 。 裝好還是有一些問題,就把安裝過程記錄下來。

安裝

ubuntu 的 dokuwiki 是 2016 釋出的版本,有點舊了。 裝好後不能直接運作,因為我之前跑自建的 node.js http service , 所以把 ubuntu 預設的 apache httpd 關掉了。 所以 apt 裝完後的 post install 腳本好像沒有順利跑完。

裝完後 apt 會在終端機要你輸入一些重要的設定, 雖然之後到 /etc/dokuwiki 改也可以, 或用 dokuwiki 內建的 configuration plugin 也行。

另外 apache 的設定也可以改, 目錄在 /etc/apache2 1) , 我是把 url rewrite 都開起來,讓網址比較美觀。

還把 apache 的 https 開起來,雖然沒有申請公開的 https , 只是自簽的憑證,但因為我開了登入功能, 用 http 裸奔還是不太好。

原始碼 bug

改好不知道為什麼還是不能執行, 找了 apache 的 log 來看 /var/log/apache2 , 發現有某幾行 php 的錯誤訊息。 找到原檔案後還是不確定問題, google 了一下, 有找到幾個 issue 或 commit 是把 $foo→bar = $baz; 改成 $foo→bar[] = $baz;$a[] = $b; 是 php 的陣列附加語法,可以把 b 加到 a 陣列內; 原始寫法則是寫成直接賦值換掉陣列。 不知道 ubuntu 包套件的人在幹麻,這麼明顯的 bug 都沒發現。

權限問題

另外之後在使用上,偶爾會提示沒有寫入權限, 發現有的檔案屬於 root ,有的屬於 www-data 。 www-data 應該是 apache 執行時的使用者名稱, 所以就都改成 www-data ,應該就不會有權限問題了。

dokuwiki 的檔案分散在 /usr/share/dokuwiki /var/lib/dokuwiki/data /etc/dokuwiki 三個目錄,另外還有一些給 apache 的在 /etc/apache2 。 usr 只放程式,除了因為要修上面那個不知道為什麼會有的 原始碼 bug ,原則上是不用動的。 var 就是放 dokuwiki 的所有資料了,但有些權限不知道為什麼變成 root , 所以就 chown -R www-data:www-data /var/lib/dokuwiki/data 全改成 www-data 。 etc 是設定,其實也可以都只讀,但要用 web 介面的 config plugin 來改設定時, 會需要寫入權限,所以我也都改成 www-data 。

1)
不知道為什麼是 2
ubuntu18上安裝dokuwiki.txt · 上一次變更: 2019/11/08 10:55 由 gold holk