31
架設 WiKi
Posted by YuanYuan2004年的一個目標,就是大家用WiKi來寫一本WebMaster技術電子書。
Green 曾經報告過 WiKi的主題,看來很符合我們的目標,但之前她在安裝時遇到了奇怪的問題,因而無法安裝測試。
昨天,我試著開始去架設 Tavi! 主體程式是 php,但安裝程式裡又有 perl,怪怪,看看程式的結構,看它是怎麼裝的。為什麼不全部都用php就好了?找了很多網站資訊,竟然說架設Tavi有難度,不好裝?怪怪。。。
原來它用perl去建立 Mysql資料庫裡的Table。
再用Perl去建立 config.php設定檔。
然後,就結束了perl的功能,哇哩,這用php直接做就好了,幹嘛還要用perl去寫,這。。。作者在想什麼?
好,我先在Mysql裡建了一個 wiki 的資料庫,把所有主程式,全部放到 sharing/wiki裡,然後到前端去執行 create-db.pl webmaster webmaster wiki,哇哩,竟然出現錯誤,什麼perl沒有安裝DBI模組,好去抓了DBI模組下來安裝,什麼,Perl版本太舊,哇哩,什麼跟什麼。。。哇哩,Perl怎麼升級啊?它到底用PPM安裝還是裝Linux時就裝好了?要找什麼版本升級?真傷腦筋,又沒有原始文件。
算了,想別的辦法。只是建個資料庫和 config.php檔,需要這麼麻煩嗎?
於是回作者網站,找到了NOperl的裝法,哈,用php裝。那幹嘛還要用perl裝啊,真是。。。
用抓來的 php,修改了一下參數,透過 browser介面,直接執行 install_db.php,OK,馬上建立好了Table。那這之前都在幹什麼?花那麼多的時間去試 DBI,Perl升級。
好了,程式開始執行?咦,不行?500 error ?不會吧,資料庫都裝好了,程式config.php也設定好了,為什麼?去前端看了 Apache的access.log,哇哩200,這很正常啊。為什麼?
突然想到,主頁下有一個 .htaccess裡面有些設定.
RewriteEngine on
RewriteRule ^([^a-z].*)$ index.php?action=view&page=$1
RewriteRule ^(edit|history)/([^a-z].*)$ index.php?action=$1&page=$2
RewriteRule ^(find)/([^a-z].*)$ index.php?action=$1&find=$2
RewriteRule ^(prefs|rss)$ index.php?action=$1
翻譯的作者為讓程式看起來簡潔點,作了如上的設定。
結果,原來是 apache裡沒有 LoadModules mod_rewrite.so進來,把RewriteEngine on打開,於是,我又進到前端去修改 httpd.conf!
好,重新啟動 apachectl configtest,哇哩,錯誤?
找不到 mod_rewrite.so,天啊,這。難道,當初安裝 Apache進去時,沒有把這個標準的module裝進去,哇哩。。
好,看看apache的版本,apacge 1.3.12,這版本未免也太舊了吧,apache的網站上已經沒有提供這個版本供人下載了,這去那裡找啊。好,不死心,用google找,找啊找,找啊找,終於被偶找到了。一個是ppm,一個是src,試試看,哇哩,2個都不行。又不知最原始的apache src在那裡。看來只好放棄了,升級Apache又可能要重新修改很多參數及模組,不然,有可能很站內容都不能跑。
今天,試著把.htaccess先刪了,咦竟然可以 work。但是連結似乎都不太對,好,再進去修改 config.php裡的一個 function,哈哈。可以 work了,雖然url是長了些,但並不影響它的功能。
感想:
1。不知為什麼不乾脆全部用php來安裝就好。
2。不一定要加裝 mod_rewrite 這個模組。因為,它只是作了一個轉址的動作。
3。明明一件很簡單的事只要10分鐘就可以安裝完成的事,卻被搞的這麼複雜。
4。如果能簡化整個安裝工作,有助於Wiki的推廣。
5。管理機制如果能再加強,應該會更好。
不過,大家可以開始用 wiki 來寫 Webmaster 的技術電子書囉。
Add A Comment