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--退出。