怎么搭建自己的WebDav服务
一:故事的起源
最近一直寻思着找一个在Itouch上运行的思维导图工具,发现了iThoughts这个软件,整个使用过程还算满意,这里就不多说了。突然和Mac之间的同步出了问题,这个软件提供了很多种方式,比如:邮件,Wifi传输等,但是整个过程都比较繁琐,在电脑上改了,又有拷贝到Touch里面去,反复这样头都大了。经过仔细查看发现这个还支持WebDav的方式。经过查询这个WebDav还是个好东西,但是在配置过程中遇到了一些问题,希望我写下来能让同样配置Apache WebDav的同志借鉴一下。
二:什么是WebDav
这里我就不说了,百度一下出来很多。
http://svndoc.iusesvn.com/svnbook/1.4/svn.webdav.basic.html
三:准备条件
Apache
http://httpd.apache.org/
四:开始旅程
本文以MacOS作为参考,其他的配置类似
这里有2种方式,一种是通过启用apache自带的配置,第二种是自己创建配置文件。
Apache默认的自带文件在 /etc/apache2/extra/httpd-dav.conf
自己制作的配置文件可以放到目录的任何地方,到时候加载到httpd.conf中就行了。
首先确认在 /etc/apache2/httpd.conf中已经把如下几个模块加载进来了,如果没有把模块前面的#号去掉。
mod_dav
mod_dav_fs
mod_setenvif
mod_alias
mod_auth_digest
mod_authn_file
具体模块有什么作用参见:
http://lamp.linux.gov.cn/Apache/ApacheMenu/mod/index.html
配置文件如下:
#这个地方为你的WebDav的文件夹位置,配置一个你需要存放的目录
# /dav 这个,就是你需要访问的路径,此处配置的是 http://127.0.0.1/dav
Alias /dav /Volumes/Develop/webDav
#这个地方为加锁文件存放位置. DAVLockDB这个是一个文件不是一个目录
DAVLockDB "/Library/WebServer/davlocks/DAVLockDB"
#定义最小超时时间,可以不配置
DAVMinTimeout 600
#定义文件存储目录,你可以用 /dav 来代替下面的路径
#AuthType 有Basic 和 Digest 两种类型
#AuthUserFile 为密码的存放文件
<directory>
Dav On
Order allow,deny
Allow from all
Options Indexes
AuthType Basic
AuthName "admin"
AuthUserFile /etc/apache2/extra/webdav.passwd
Require valid-user
</directory>
创建文件夹:
sudo mkdir -p /Volumes/Develop/webDav
sudo mkdir -p /Library/WebServer/davlocks
#mkdir /etc/apache2/extra/ 这个文件夹已经存在了
让httpd的进程拥有者拥有以上文件夹的权限.(mac 上为www)
sudo chown -R www:www /Volumes/Develop/webDav
sudo chown -R www:www /Library/WebServer/davlocks
创建 DAVLockDB 文件
sudo mkfile -n 1k /Library/WebServer/davlocks/DAVLockDB
创建密码文件
Basic类型
sudo htpasswd -c /etc/apache2/extra/webdav.passwd 用户名
输入密码之后就创建成功了,-c 这个参数为新建的时候用。
如果添加第二个用户则不用-c参数
Digest类型
中间admin为 AuthName
htdigest -c "/usr/user.passwd" admin 用户名
配置完成:
现在就可以访问 : http://127.0.0.1/dav
怎么搭建自己的WebDav服务
最新推荐文章于 2025-06-30 15:20:49 发布