通过Nginx配置一个简单的下载站

大家在下载镜像或者jdk的时候,应该见过类似的下载站,效果图如下:
2023-03-29T07:41:15.png
那我们进行快速搭建,解析一个二级域名,或者用IP也行,创建一个新静态站点,如图:
2023-03-29T07:41:30.png
然后熟悉几个配置参数:

autoindex on;
#on开启目录浏览
autoindex_exact_size off;
#off显示出文件的大概大小,单位是kB或者MB或者GB;默认为on,显示出文件的确切大小,单位是bytes。
autoindex_localtime on;
#显示的文件时间为文件的服务器时间。默认为off,显示的文件时间为GMT时间。
charset utf-8,gbk;
#默认中文目录乱码,添加上解决乱码问题;

创建好后,将下面的配置信息添加到网站配置文件中去,如图:(我放在了第8行)
2023-03-29T07:42:09.png

需要特别注意一个地方,设置的时候记得修改默认文档,因为优先级是默认文档优先,改成一个不存在的就可以了,比如

index aa.1;

删掉一些用不到的配置信息,下面是我的设置,保留了一些需要用到的。

server
{
    listen 80;
    server_name down.wzznb.com;
    index aa.1; # 修改默认文档
    root /www/wwwroot/down.wzznb.com; # 网站根目录
    
    location /download { # 访问网页时用down.wzznb.com/download
      alias /www/wwwroot/down.wzznb.com/; # 就会访问到alias设置的这个目录
        autoindex on; # 开启目录浏览
        autoindex_localtime on; # 显示时间
        autoindex_exact_size off; # 显示想要的单位
        charset utf-8,gbk; # 防止中文乱码
    }
    
    #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
    #error_page 404/404.html;
    #SSL-END
    
    #禁止访问的文件或目录
    location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)
    {
        return 404;
    }
    
    #一键申请SSL证书验证目录相关设置
    location ~ \.well-known{
        allow all;
    }
    
    access_log  /www/wwwlogs/down.wzznb.com.log;
    error_log  /www/wwwlogs/down.wzznb.com.error.log;
}

2023-03-29T07:44:03.png
到此就搭建完成了,访问测试:
2023-03-29T07:44:17.png

还可以

location /
{
    root /www/wwwroot/wzzsb.com/download;
    autoindex on;
    autoindex_format html;
    autoindex_exact_size off;
    autoindex_localtime on;
    charset utf-8,gbk;
}
  • 这么写扔伪静态里,后面传文件就放download目录,根目录里的index.html 404.html也不会显示出来.
  • 并且需要注释配置文件里面的index
    2023-04-06T06:26:14.png
    2023-03-30T00:36:42.png

标签: none