测试系统环境

Debian 11 x64
Windows 10 20H2

Linux

使用apt安装nginx

1
apt install nginx -y

关闭默认配置站点,提高安全性

1
mv /etc/nginx/sites-enabled/default /etc/nginx/sites-enabled/default.bak

使用文本编辑工具在配置文件目录下新增配置

1
nano /etc/nginx/conf.d/webdav.conf

此处也可用vivim等代替

配置如下

1
2
3
4
5
6
7
8
server {
autoindex on;
listen 8080;
#listen [::]:8080;
charset utf-8;
#server_name _;
root /data/;
}

如需监听ipv6请将#listen [::]:8080前的#去掉

至此重载nginx后就可以作为文件服务器使用了

进阶配置:实现WebDAV

安装依赖

1
apt install libnginx-mod-http-dav-ext -y

配置只读的WebDAV

1
2
3
4
5
6
7
8
server {
listen 8000;
#server_name _;
charset utf-8;
root /data/;
autoindex on;
dav_ext_methods PROPFIND;
}

带完整权限的WebDAV

1
2
3
4
5
6
7
8
9
10
11
12
13
server {
listen 8000;
#listen [::]:8000;
#server_name _;
charset utf-8;
root /data/;
autoindex on;
dav_methods PUT DELETE MKCOL COPY MOVE;
#need to install libnginx-mod-http-dav-ext
dav_ext_methods PROPFIND OPTIONS;
create_full_put_path on;
client_max_body_size 100000000m;
}

配置完成后,可以结合nginx设置密码使用

Windows

nginx官网下载解压nginx

修改conf文件夹下的nginx.conf文件

1
2
3
4
5
6
7
8
9
10
11
12
#关闭日志
access_log nul;
server {
listen 8080;
#listen [::]:8080 ipv6only=on;
autoindex on;
#charset utf-8;
#server_name localhost ;
# 文件路径:注意不能直接以整个逻辑磁盘D:\ 为目录路径,要D:\英文目录名;如果是逻辑磁盘则为D:\\
root D:\\;
}
}

启动nginx

1
nginx

退出nginx

1
nginx -s quit

重载nginx

1
nginx -s reload

已知问题,若中文目录/文件显示500错误,说明系统不是UTF-8编码,需在区域设置中修改为UTF-8