Nginx设置pdf、doc、xlsx、txt等文件直接下载

一.配置下载功能

server {
listen 80;
server_name xxx.xxx.xxx;

location ^~ /download/ {
root /download/center/;

sendfile on; # 开启高效文件传输模式
autoindex on; # 开启目录文件列表
autoindex_exact_size on; # 显示出文件的确切大小,单位是bytes
autoindex_localtime on; # 显示的文件时间为文件的服务器时间
charset utf-8,gbk; # 避免中文乱码

# 开启下载功能
if($request_filename ~* ^.*?.(txt|doc|pdf|zip|docx|xlsx|gif|jpg|png)$) {
add_header Content-Disposition attachment;
add_header Content-Type application/octet-stream;
}

}
}

二.配置预览及下载功能

server {
listen 80;
server_name xxx.xxx.xxx;

location ^~ /download/ {
root /download/center/;

sendfile on; # 开启高效文件传输模式
autoindex on; # 开启目录文件列表
autoindex_exact_size on; # 显示出文件的确切大小,单位是bytes
autoindex_localtime on; # 显示的文件时间为文件的服务器时间
charset utf-8,gbk; # 避免中文乱码

# 同时开启预览及下载功能
if($request_filename ~* ^.*?.(txt|doc|pdf|zip|docx|xlsx|gif|jpg|png)$) {
add_header Content-Disposition: 'p_w_upload;';
}

}
}
发表评论

相关文章