国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区

掃一掃
關注微信公眾號

WebDAV:Linux平臺下搭建基于HTTP的協作平臺
2011-04-01   51CTO

編者按:隨著辦公方式的靈活化,各個企業當下對在線協作的需求也各有不同。企業內部協作通常采用FTP服務器或微軟SharePoint等平臺實現,但是長距離的在線協作,則往往需要通過HTTP實現。以下介紹在Linux平臺下搭建遠程協作平臺的協議:WebDAV。

WebDAV協議允許用戶通過HTTP保存和共享文件,這是一個非常有價值的突破,因為HTTP通常是只讀的,除了訪問文檔外,用戶可以編輯和重新上傳它們,你可以將其理解為一種基于HTTP的網絡文件系統,或一種支持長距離文件協作的方法。WebDAV協議支持文件鎖和版本控制,因此,當你訪問到WebDAV文件夾后,你就可以編輯文件,不用擔心會覆蓋其他人的編輯成果。時至今日,雖然在線協作的方法越來越多,但WebDAV在文件共享方面仍然有它的用處,特別是有很多的服務器和客戶端軟件支持它。

WebDAV在線協作

和FTP不一樣,HTTP提供強認證和加密,以及緩存和代理支持,因為WebDAV是工作在HTTP之上的,因此它也可以利用HTTP的這些特性,SSH可能是另一種選擇,但SSH在移動文件方面有一些限制,并且也沒有那么多客戶端默認就支持它。

WebDAV和Apache2

Apache服務器通過加載ismod_dav可以支持WebDAV文件夾,在Debian或Ubuntu上,輸入下面的命令開啟這個功能:

a2enmod dav
a2enmod dav_fs
/etc/init.d/apache2 restart

Mod_dav為服務器添加了WebDAV功能,mod_dav_fs提供后臺支持,允許訪問服務器文件系統中的資源,更多關于dav和dav_fs的詳細信息,請參考Apache的幫助手冊。

你也可以設置通過WebDAV可以訪問的文件夾,如:

<Directory "/web/juliet/davfolder">
Dav On

Order Allow,Deny
Allow from all

AuthType Digest
AuthName WebDAV-Realm

AuthUserFile "/usr/var/webdav.passwd"

require user juliet
</Directory>

這里最重要的一行是Dav On,它將這個目錄轉換成一個WebDAV文件夾,剩下的部分都是對這個目錄設置的安全訪問限制,在任何目錄上開啟WebDAV功能之前,最重要的是設置認證,否則就會存在很大的漏洞,這里使用了MD5 Digest認證,將訪問權限制到用戶名,你也可以使用require valid-user。

為了允許別人寫入你的目錄,你需要修改它的權限,注意,Apache用戶必須能夠寫入這個目錄,再提醒一下,一定要注意安全問題,最好將WebDAV目錄和你的網站文件適度地分開。

如果要手動設置WebDAV,你需要在Apache配置文件中添加下面的內容:

LoadModule dav_module /usr/lib/apache2/modules/mod_dav.so
LoadModule dav_fs_module /usr/lib/apache2/modules/mod_dav_fs.so
DAVLockDB ${APACHE_LOCK_DIR}/DAVLock

然后重啟Apache,再設置你要共享的目錄。

客戶端DAV

雖然DAV通常由Web服務器提供,但Web瀏覽器不是訪問它的最佳渠道,大多數時候,你得到的是一個目錄列表(如果你已經在Apache設置中開啟這個功能),只能讀取或下載文件,不能編輯或上傳文件。

如果你想圖形化訪問,Nautilus和Konqueror文件瀏覽器都內置了對WebDAV的支持,使用dav://server.example.com/juliet打開文件夾(需要用戶名和密碼),現在你應該能夠編輯和上傳文件了,如果不行,可能需要檢查一下服務端的目錄和文件權限設置。

另一個WebDAV客戶端是cadaver,它是一個純命令行客戶端,它的工作方式和FTP客戶端差不多,使用下面的命令建立一個連接:

cadaver http://juliet.example.com/myfolder

當然,這里也是需要用戶名和密碼的,進入指定文件夾后,你就可以使用get(或mget) filename下載文件,或put(或mput) filename上傳文件了,cadaver也允許你編輯文件的元數據,而Nautilus和Konqueror則不行。還有一個辦法是使用fusedav(Debian或Ubuntu中已包含)作為普通文件系統的一部分訪問WebDAV目錄,你需要使用adduser username fuse將你的用戶添加到fuse用戶組,記住,一定要退出重新登錄才會生效,然后使用:

fusedav http://juliet.example.com/myfolder localfolder

打開遠程目錄,將其掛載為本地文件夾(localfolder),注意這個目錄必須事先創建好。

使用WebDAV還可以做到更多

除Mod_dav_fs允許你使用服務端目錄系統提供WebDAV文件外,還有其它模塊也行,如mod_dav_svn,它可以通過Apache提供一個Subversion倉庫,如果你要這么做,你還需要加載mod_dav_lock模塊(mod_dav_fs不需要鎖模塊,因為它有自己的鎖)。因為WebDAV是一個開放的協議,如果需要,你還可以用它做更多的事情。

英文原文連接:http://www.serverwatch.com/tutorials/article.php/3929346/article.htm

原文鏈接:http://os.51cto.com/art/201104/252808.htm

熱詞搜索:

上一篇:行業分析:如何區分企業架構和云架構
下一篇:簡化VPLS組網可靠性的部署

分享到: 收藏
主站蜘蛛池模板: 绥德县| 临邑县| 宁城县| 博乐市| 辽阳市| 台州市| 益阳市| 寿阳县| 芦山县| 永春县| 星座| 桓仁| 白水县| 永仁县| 宜昌市| 郧西县| 垣曲县| 乌鲁木齐市| 航空| 渭南市| 甘德县| 蕉岭县| 青浦区| 红安县| 福海县| 黎城县| 弥渡县| 丹棱县| 洛川县| 大冶市| 全南县| 湘阴县| 拉孜县| 万源市| 桐柏县| 乌鲁木齐市| 沙坪坝区| 华亭县| 宝应县| 长寿区| 黄平县|