使用apache简单搭建webdav文件共享服务器

我经常遇到人在外面,但是需要访问家里的文件的情况。原来搭了一个FTP文件服务器,但是感觉还是不够方便。我这个人比较懒,不方便怎么可以行呢?所以就有了这篇博文。

WEBDAV是什么?

自己百度。。。。。

webdav对比ftp有什么好处?

webdav通过http工作,所以有ftp无法提供的http的所有好处。例如:强身份验证,加密,代理支持和缓存等。虽然ftp也可以通过SSH获得一些支持,但http基础框架的部署要比ssh更广泛。再说,ssh没有http所做的各种工具,开发库和应用程序。

另外使用DAV传输(以及HTTP传输)也比FTP更有效。您可以通过单个TCP连接管道多个传输,而FTP需要为每个传输的文件(加上控制连接)来建立新连接。

安装步骤

1、首先在debian系统下安装apache2

1
2
apt-get update
apt-get install apache2 -y

2、创建webdav文件夹,并将chonw设成www-data

1
2
mkdir /var/www/webdav
chown -R www-data:www-data /var/www/webdav

3、开启webdav的dav功能模块,然后重启apache2

1
2
3
a2enmod dav
a2enmod dav_fs
systemctl restart apache2

4、编辑/etc/apache2/sites-available/000-default.conf配置文件
在首行添加

1
DavLockDB /var/www/DavLock

</VirtualHost>标签前面添加下面的代码:

1
2
3
4
5
6
7
8
9
10
11
12
#设置别名
Alias /webdav /var/www/webdav

<Directory /var/www/webdav>
DAV On

#设置密码
AuthType Basic
AuthName "Server"
AuthUserFile /var/www/webdavpasswd/passwd.dav
Require valid-user
</Directory>

5、配置访问密码

1
2
mkdir /var/www/webdavpasswd
htpasswd -cb /var/www/webdavpasswd/passwd.dav 用户名 密码

6、重启apache2

1
systemctl restart apache2

访问方法

在任何浏览器里输入IP地址/webdav就可以访问webdav了。

后记

映射文件

webdav可以在windows里做映射,可以达到跟本地盘访问一样的效果。
由于WIN7以上版本的操作系统微软禁用了http形式的基本WebDAV验证形式,所以需要我们手工来修改一下。
在运行里输入regedit打开注册表。
修改
HKEY_LOCAL_MACHINE>>SYSTEM>>CurrentControlSet>>Services>>WebClient>>Parameters>>BasicAuthLevel
把这个值从1改为2。然后进控制面板,在服务里,把WebClient服务重启(没有启动的就启动它).


下载文件大小的问题

在某些版本的 Windows 操作系统中,WebDAV 驱动器的最大文件大小被限制为 50MB。如果你试图复制超过 50MB 大小的文件,Windows 就会弹出错误提示框。当然,这个限制是可以通过修改注册表来消除的。将注册表中位于
HKEY_LOCAL_MACHINE>>SYSTEM>>CurrentControlSet>>Services>>WebClient>>Parameters>>FileSizeLimitInBytes
处的键值由 50,000,000 (50MB) 修改为更大的数值。最大修改为:4294967295(0xffffffff)字节,即4G。不过我好像没有遇到这个问题,这个方法有没有用就不知道了。

本文标题:使用apache简单搭建webdav文件共享服务器

文章作者:Hank ZHU

发布时间:2019年02月17日 - 10:42

最后更新:2019年02月17日 - 13:40

原始链接:http://zealot.top/简单搭建webdav文件共享服务器.html

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际

如需转载请注明文章出处,并保留原文链接及作者。感谢您尊重别人的劳动成果!


-------------本文结束 感谢您的阅读-------------
-------------如果觉得这篇文章不错,可以请作者喝杯咖啡!-------------