编程知识 cdmana.com

在xampp套件中的apache2.4启用Webdav功能

在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目录内容,创建目录里,会提示输入用户名和密码




参考:
https://wiki.archlinux.org/index.php/WebDAV
https://www.mkyong.com/apache/how-to-enable-webdav-in-apache-server-2-2-x-windows/
https://httpd.apache.org/docs/2.4/mod/mod_dav.html
http://serverfault.com/questions/655923/apache2-4-with-webdav-give-an-405-error




采纳答案1:

优秀文章-欢迎进行技术分享,感谢你的支持!

-------------------------


优秀文章-欢迎进行技术分享,感谢你的支持!

-------------------------


优秀文章-欢迎进行技术分享,感谢你的支持!




采纳答案2:
好文!



采纳答案3:
优秀文章-欢迎进行技术分享,感谢你的支持!

版权声明
本文为[阿里云问答]所创,转载请带上原文链接,感谢
https://developer.aliyun.com/ask/243126

Scroll to Top