前言
最近手机端需要使用nPlayer来追剧和看电影,于是用宝塔搭建了一个WebDAV程序,顺便记录下搭建过程;
说明
WebDAV 是基于 Nginx 搭建的,需要Nginx的 http_dav_module 模块支持; 如果宝塔安装的 Nginx 没有 http_dav_module 模块,就需要卸载 Nginx 后重新选择编译安装并添加自定义模块; 博主查询了下7.4.5 版本的宝塔面板使用极速安装模式下 Nginx 默认安装了 http_dav_module 模块; 而7.4.5 版本以前的宝塔面板是否有默认安装就不太清楚了; 可以使用nginx -V命令查询是否有安装 http_dav_module 模块;
安装
如果没有 http_dav_module 模块就卸载 Nginx 后按下面的方法重新编译安装; 如果存在 http_dav_module 模块就直接按后面的搭建方法设置网站就行了; 编译安装并添加自定义模块
填写自定义模块信息 模块名称:http_dav_module 模块描述:webdev 模块参数:--with-http_dav_module --add-module=/root/nginx-dav-ext-module 前置脚本:git clone https://github.com/arut/nginx-dav-ext-module.git /root/nginx-dav-ext-module 等待编译安装完成后用 nginx -V 命令查看模块是否已经成功安装;
搭建
添加站点时PHP版本选择纯静态即可,因为WebDAV不需要PHP支持; 然后前往网站设置在网站目录中开启密码访问,设置好自己的账户及密码; 最后需要修改站点的Nginx配置文件,前往网站设置选择配置文件,在最后面 } 符号之前粘贴以下设置代码:
location / {
root /home/Downloads; # WebDAV目录路径(自行修改)
client_max_body_size 102400M; # 大文件支持参数
charset utf-8; # 编码参数(不设定可能导致中文乱码)
autoindex on;
dav_methods PUT DELETE MKCOL COPY MOVE;
# 需要 nginx-dav-ext-module 才有下面的选项
dav_ext_methods PROPFIND OPTIONS LOCK UNLOCK;
create_full_put_path on;
}
# 定向favicon图标(可自行修改,不需要可删除此条目)
location = /favicon.ico {
proxy_pass https://sunpma.com/other/oss/img/webdav.ico;
}
示例: