需手动配置Apache或Nginx以启用WebDAV:Apache需安装dav/dav_fs模块并配置Alias、Dav on及Basic认证;Nginx官方版不支持,可换定制版或反向代理独立WebDAV服务,均须强制HTTPS与权限隔离。

如果您希望在宝塔面板托管的网站上启用WebDAV协议以支持远程文件管理与同步,则需手动配置Nginx或Apache的相应模块与规则。以下是实现该功能的具体步骤:
一、确认服务器环境支持WebDAV
WebDAV依赖于Web服务器内置模块,Nginx需启用ngx_http_dav_module(默认不编译进宝塔官方Nginx版本),Apache则需确保mod_dav与mod_dav_fs已启用。宝塔默认Nginx不含完整WebDAV支持,因此优先推荐使用Apache环境或切换为支持WebDAV的Nginx定制版。
1、登录宝塔面板,进入【软件商店】→ 找到当前运行的【Apache】或【Nginx】→ 点击【设置】→ 查看【安装扩展】列表。
2、对于Apache:确认【dav】和【dav_fs】两项状态为“已安装”,若未安装,勾选后点击【安装】。
3、对于Nginx:若使用宝塔官方编译的Nginx,默认不包含WebDAV模块,无法直接启用;需卸载当前Nginx并安装含--with-http_dav_module参数编译的版本,或改用Apache方案。
二、通过Apache站点配置启用WebDAV
在Apache环境下,需为指定站点添加WebDAV目录映射及访问控制,确保仅授权用户可读写,且路径隔离安全。
1、进入【网站】→ 找到目标站点 → 点击【设置】→ 切换至【配置文件】选项卡。
2、在
Alias /webdav "/www/wwwroot/your-site/webdav"
Dav on
Options Indexes FollowSymLinks
AllowOverride None
Require all denied
Require valid-user
AuthType Basic
AuthName "WebDAV Authentication"
AuthUserFile /www/wwwroot/your-site/.htpasswd
3、点击【保存】,然后在终端中执行:htpasswd -c /www/wwwroot/your-site/.htpasswd username 创建首个WebDAV用户(系统会提示输入密码)。
4、创建WebDAV根目录:mkdir -p /www/wwwroot/your-site/webdav && chown www:www /www/wwwroot/your-site/webdav。
三、通过Nginx反向代理方式启用WebDAV服务
当Nginx原生不支持WebDAV时,可部署独立WebDAV服务(如rclone http、litestream、或第三方轻量WebDAV服务器),再通过Nginx反向代理暴露至域名子路径,兼顾安全性与兼容性。
1、使用Supervisor或systemd在服务器后台启动一个WebDAV服务进程,例如监听127.0.0.1:8081,根目录设为/www/wwwroot/your-site/webdav。
2、返回宝塔【网站】→ 目标站点【设置】→ 【反向代理】→ 【添加反向代理】。
3、代理名称填写“webdav”,目标URL填写http://127.0.0.1:8081,发送域名留空,缓存关闭。
4、在【配置文件】中该代理区块下方追加以下头信息透传规则:
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Depth $http_depth;
proxy_set_header Translate $http_translate;
proxy_set_header Range $http_range;
proxy_set_header Content-Range $http_content_range;
四、配置WebDAV访问权限与认证
无论采用Apache直启或Nginx反代,均须强制启用HTTP Basic认证,并限制IP或启用HTTPS,防止凭据明文传输泄露。
1、进入【网站】→ 目标站点【SSL】→ 开启SSL并强制HTTPS(WebDAV客户端普遍拒绝非HTTPS的Basic Auth)。
2、在【网站】→ 【设置】→ 【伪静态】选项卡中,清空内容或保留为空,避免rewrite规则干扰WebDAV的PROPFIND、PUT等方法。
3、若使用Apache方案,在配置中已设定Require valid-user,此时需确保.htpasswd文件权限为640且属主为www;若使用Nginx反代方案,必须在后端WebDAV服务中单独配置用户认证,不可依赖Nginx层Basic Auth。
五、验证WebDAV服务可用性
完成配置后需通过标准WebDAV客户端或curl命令验证HTTP方法响应是否符合预期,重点检查OPTIONS、PROPFIND响应头及状态码。
1、在SSH中执行:curl -I -X OPTIONS https://your-domain.com/webdav/,应返回200及DASL、DAV头字段。
2、执行:curl -u username:password -X PROPFIND https://your-domain.com/webdav/ --data '
3、在Windows资源管理器地址栏输入https://your-domain.com/webdav/,按提示输入账号密码,成功挂载即表示配置生效。

















