在xampp套件中的apache2.4启用Webdav功能
一用户问,为什么在旧版的xampp里可以很方便使用xampp中的webdav功能来建NAS网络存储,但新版本不行。
经过测试和网上的搜索结果,这可能是因为新版本的apache 2.4中一些默认设置导致的,特别是需要注意关闭webdav目录中的默认首页显示功能。
环境:Windows 2012 64位,xampp-win32-7.0.8-0-VC14-installer.exe(apache2.4)
过程:
1.从xampp官方网站下载最新版本的安装程序,进行安装
2.安装过程中,本例尽可能少安装组件,如mysql等组件不安装。安装过程中,提示apache停止工作,可忽略
3.修改 D:\xampp\apache\conf\httpd.conf 文件里的内容,启用webdav及验证所需要几个模块,如 mod_auth_digest, mod_dav, mod_dav_fs 等
4.且启用 conf/extra/httpd-dav.conf 里的配置文件
5.编辑 conf/extra/httpd-dav.conf 配置文件,注释或删除里边关于webdav目录的内容,因为本例将新建一个虚拟站点
6.编辑 conf/extra/httpd-vhosts.conf 配置文件内容,本例内容如下:
<VirtualHost *:80>
DocumentRoot "D:/xampp/htdocs/yun.anqun.org"
ServerName yun.anqun.org
ErrorLog "logs/yun.anqun.org-error.log"
CustomLog "logs/yun.anqun.org-access.log" common
<Directory "D:/xampp/htdocs/yun.anqun.org">
# Disabled default index pages, for example, index.html
DirectoryIndex disabled
dav on
AuthType Digest
AuthName "DAV-upload"
# You can use the htdigest program to create the password database:
# htdigest -c "c:/Apache24/user.passwd" DAV-upload admin
AuthUserFile "c:/Apache24/user.passwd"
AuthDigestProvider file
<LimitExcept GET HEAD OPTIONS PROPFIND>
require user admin
</LimitExcept>
</Directory>
</VirtualHost>
7.通过 htdigest -c "c:/Apache24/user.passwd" DAV-upload admin 命令来创建需要验证用户的访问信息
8.重启apache后,测试可以通过浏览器或cadaver客户端软件浏览webdav目录内容,创建目录里,会提示输入用户名和密码
参考: