使用nginx搭建断点续传文件下载服务器

使用nginx搭建断点续传文件下载服务器

docker一键部署

docker container run -d --rm --name nginx -p 0.0.0.0:80:80 -v $PWD:/usr/share/nginx/html nginx

这里默认开放的是80端口,映射的是当前目录.如要修改请修改-p后的第一个80

可能会提示已经有一个重名的容器,这时使用docker ps -a查看所有的容器,然后把名叫nginx的容器都删掉就好了.删除使用docker rm eea36af1150c b280982f7283 b403828871e7 69fa3274e9a5

然后去访问自己服务器的80端口就行了.虽然看不到目录下文件列表却可以直接下载

比如我在执行docker语句时在Download目录下,其目录结构如下:

文件夹 Download 列表
Download
├─root.zip
├─Linux
│ └─shell.zip

比如我想下载root.zip就可以访问ip/root.zip

正常来说到这里就可以了.如果要下载的文件太大还是会403的.这是就需要修改配置文件里的一个参数并重启nginx

❌等什么时候有空了我做一个改好的nginx镜像传上去这样就不用麻烦了

进入容器

docker exec -ti nginx /bin/bash

安装vim

apt update
apt install vim -y

修改配置文件

vim /etc/nginx/nginx.conf
#修改第一行的user xxxx;为user root;

重启nginx

nginx -s reload

虽说这样能断点续传,但下载速度还是不理想.不过至少解决了大文件下到一半直接断开没法继续下载的窘境.如果没法断点续传的话500m以上的文件压根就不能下载.几乎肯定会断

10线程才不到2m

网上很多关于如何搭建nginx断点续传服务器的教程,全都非常繁琐乱七八糟.明明三两句话就能说清楚的非得写一大篇.最后还无法复现,浪费时间.明明不想详细了解nginx配置文件的问题的非得扯一大堆.试了好多教程没有一个能成功的.干脆自己写一篇总结.