WebDAV:Linux平台下搭建基于HTTP的协作平台

发表于:2011-4-01 10:04

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:黄永兵 编译    来源:51Testing软件测试网采编

  编者按:随着办公方式的灵活化,各个企业当下对在线协作的需求也各有不同。企业内部协作通常采用FTP服务器或微软SharePoint等平台实现,但是长距离的在线协作,则往往需要通过HTTP实现。以下介绍在Linux平台下搭建远程协作平台的协议:WebDAV。

  WebDAV协议允许用户通过HTTP保存和共享文件,这是一个非常有价值的突破,因为HTTP通常是只读的,除了访问文档外,用户可以编辑和重新上传它们,你可以将其理解为一种基于HTTP的网络文件系统,或一种支持长距离文件协作的方法。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,再设置你要共享的目录。

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号