WebDAV是一種HTTP1.1的擴展協議,可以在像操作本地文件夾一樣操作服務器上的文件夾
WebDAV的優勢:
一套自己定義的安全完善的身份驗證機制。
穿牆
HTTPS傳送數據
使用一個TCP連接傳送所有文件
方便的客戶端工具:和局域網中的文件共享一樣簡單使用。
先確保你的server上安裝了apache
sudo apt-get install apache2 sudo apt-get install apache2-utils
啟動webdav服務。
sudo a2enmod dav_fs
sudo a2enmod dav
創建一個可以共享目錄並授權給apache;
sudo mkdir /home/yang/webdav-share sudo chown www-data:www-data /home/yang/webdav-share sudo mkdir /home/yang/webdavpasswd
創建一個存放密碼的目錄並創建登陸用戶;
#創建用戶 sudo htpasswd -c /home/yang/webdavpasswd/passwd.dav webdav #授權密碼目錄給apache sudo chown www-data:www-data -R /home/yang/webdavpasswd #設置密碼文件讀寫權限 sudo chmod 640 /home/yang/webdavpasswd/passwd.dav
最后寫入Apache2配置文件;重啟一下apache就OK了。
sudo vim /etc/apache2/sites-enabled/000-default
在000-default的virtialhost里加入以下配置
DocumentRoot /home/yang/webdav-share <Directory /home/yang/webdav-share> Options Indexes MultiViews AllowOverride None Order allow,deny allow from all </Directory> Alias /webdav /home/yang/webdav-share <Location /webdav> DAV On AuthType Basic AuthName "webdav" AuthUserFile /home/yang/webdavpasswd/passwd.dav Require valid-user </Location>
安裝cadaver,運行如下命令
cadaver http://localhost/webdav/
輸入用戶名和密碼即可登錄入服務器,使用類似ftp的命令就可以操作服務器上的文件,使用h命令可列出所有的命令。
dav:/> h Available commands: ls cd pwd put get mget mput edit less mkcol cat delete rmcol copy move lock unlock discover steal showlocks version checkin checkout uncheckout history label propnames chexec propget propdel propset search set open close echo quit unset lcd lls lpwd logout help describe about Aliases: rm=delete, mkdir=mkcol, mv=move, cp=copy, more=less, quit=exit=bye dav:/>
常用的命令有ls--列出文件,put--上傳文件,get--下載文件,cat--顯示文件內容,edit--在線編輯文件,quit--退出。