最近手机端需要使用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://www.cdsy.xyz/favicon.ico;
}
示例:
修改完成后保存即可,至此WebDAV就搭建完毕了,可以使用网页访问,也可以在支持WebDAV的软件及APP中使用。