因為要驗證能否在 thttpd 上面跑 webDAV, 所以先在 VM 上試著裝一個 thttpd 玩玩看.

1. 安裝 thttpd

1-1. 下載 source code

由於 thttpd 已經不在 Ubuntu (12.04) 的套件內,

故決定手動下載 open source.

 

下載連結: (支援 i386)

https://launchpad.net/ubuntu/+source/thttpd/2.25b-11

 

下載完後, 解壓縮 (tar.gz), 再放到適合的路徑.

 

 1-2  build code

 ./configure ... ok

 

make ... 不ok

看了錯誤訊息, 

htpasswd.c:52:12: 錯誤: 與 「getline」 類型衝突
/usr/include/stdio.h:675:20: 附註: 「getline」 的上一個宣告在此

那就把 htpasswd.c 的 getline 改名吧 !!

再 make 一次就 ok 了

 

make install ... 又不ok

這次的錯誤訊息是 

chgrp: 無效的群組:‘www’

 

先檢查 /etc/group, 還真的沒有 www 這個群組.

 

因為我不知道新增群組還要再加上什麼東西, 所以不往這個方向改.

我的想法是, 先找到哪一行執行 chgrp, 再把 "www" 改成 /etc/group 裡面的其中一項 ... 就決定是 "www-data" 吧 !

 

執行 grep chgrp ... 查到了, chgrp 是在 /extras/makefile ,

然而紀錄 "www" 的變數 "WEBGROUP" 卻是在上一層的 makefile.

於是, 回到上一層, 把 "WEBGROUP" 從 "www" 改成 "www-data"

重新 make install ... ok ! 

 

結論:

1. 下載 i386 的 thttpd source code

2. ./configure

3. 修改 extras/htpasswd.c, 更名 getline.

4. make

5. 修改 Makefile, 把 WEBGROUP = www 改成 WEBGROUP = www-data

6. make install

 

arrow
arrow
    全站熱搜

    kk 發表在 痞客邦 留言(0) 人氣()