最新在做项目的时候,由于项目历史原因,附件分几个磁盘存放,需要将几个磁盘文件进行整合访问,通过对Nginx的研究,可以实现。

我的文件分别存在同一台电脑上的D:/server/filecenter/dtxt/和H:/server/filecenter/dtxt/下,实现思路是当访问资源一时,没有找到,则跳转到资源二路径下查找,Nginx配置如下;

        #资源访问路径一
        location ^~ /file/dtxt {
             alias  D:/server/filecenter/dtxt/;
             autoindex off;
             allow 192.168.80.48; #允许访问的IP
             allow 192.168.80.46; #允许访问的IP
             allow 192.168.80.58; #允许访问的IP
             deny all; #禁止允许以外的全部IP
             if (!-e $request_filename) {#判断文件是否存在
                set $requestUrl $uri;
                rewrite ^/(.*)$ /diskh$requestUrl permanent; #跳转到资源访问路径2上
                break;
            }
            absolute_redirect off;
        }
        
        #资源访问路径二
        location ^~ /diskh/file/dtxt {
             alias  H:/server/filecenter/dtxt/;
             autoindex off;
             allow 192.168.80.48; #允许访问的IP
             allow 192.168.80.46; #允许访问的IP
             allow 192.168.80.58; #允许访问的IP
             deny all; #禁止允许以外的全部IP
             absolute_redirect off;
        }

 

配置完成之后,重启Nginx服务,分别在两个磁盘对应存放不同的文件;

在D:/server/filecenter/dtxt/文件夹下,存放1.png文件,访问路径:http://192.168.80.48:48000/file/dtxt/1.png;

 

 

 

在H:/server/filecenter/dtxt/文件夹下,存放2.png文件,访问路径:http://192.168.80.48:48000/file/dtxt/2.png;

 

 

分别访问两个路径时,都能看得到文件,但是当访问图片2.png时,路径会重定向到新路径下,如下图;

访问1.png,地址不会发生变化,还是http://192.168.80.48:48000/file/dtxt/1.png

 

访问2.png,地址会发生变化,从http://192.168.80.48:48000/file/dtxt/2.png变成了http://192.168.80.48:48000/diskh/file/dtxt/2.png;

 

原文地址:http://www.cnblogs.com/a876459952/p/16783843.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性