最近研究了一下webdav,關于webdav的詳細信息可以在 google上搜索或者參看官方網站 筆者簡單的嘗試了它下面的slide和mod_dav.
slide是jakarta下面的子項目,分為服務端和客戶端.個人認為服務端是專門為tomcat定做的一個webdav實現.關于slide,javaeye上有些討論,可以參考http://www.javaeye.com/t/5267.html.本人涉入的不是很深,中文問題讓我碰到了,slide提供2中存儲方式,文件形式和數據庫形式,限于時間,筆者沒有對數據庫形式進行測試.slide的工作目錄默認在服務器bin目錄下.
用mod_dav來實現相比就簡單多了,如果你熟悉apache httpserver,應該很容易搞定.http://www.webdav.org/mod_dav/ 上的有部分資料.可以根據http://www.webdav.org/mod_dav/install.html 的講解來配置.apache server1.3以后(包括1.3)在發布的時候都自帶了mod_dav包.需要做的就是加載和配置它.
LoadModule dav_module libexec/libdav.so
AddModule mod_dav.c
筆者在配置的時候由于沒有認真看文檔,犯了個小小的錯誤.所以注意下面的文字:
"In the following example, the DAV lock database will be stored in the /usr/local/apache/var directory (which must be writable by the server process). The file's name will be DAVLock when mod_dav needs to create it.
(actually, mod_dav will create one or more files using this file name plus an extension)
DAVLockDB /usr/local/apache/var/DAVLock"
然后你需要配置一個webdav的工作目錄,由于訪問apache服務的用戶會默認是nobody用戶,所以你至少得讓工作目錄對nobody可讀寫.在目錄的定義中加入DAV on這樣的屬性就 ok了
eg:
"Alias /pages /home/www/davhome
<Location /pages>
DAV On
</Location>
"
測試webdav
安裝完webdav后,你可以做簡單的測試:
IE瀏覽器-〉文件-〉打開,然后輸入配置的url,客戶端API.
如果是 java可以 采用slide的客戶端.(php用戶咋辦?).
這個最新的客戶端使用的是最新的jdom,注意哦..
參考資料:
http://www.uplinux.com/www/net/02/131.shtml