nginx代理内网服务器的图片服务器

需求:我们图片服务器放在内网环境,前端是nginx提供的web服务,让用户访问到内网服务器上的图片并正确显示

一、首先在内网图片服务器上安装配置nginx
安装过程省略

server{
        listen 80 ;
        server_name imglib.exapmle.com;
        location ~* /udata/(.+)\.(jpg|gif|png|jpeg|p12)$ {
                root /data/upload_file;
                break;
        }
}

备注:imglib.exapmle.com 是内网环境中自定义的域名,如果想让nginx走内网环境必须在 /etc/hosts 文件中做解析
这里写图片描述

二、在外网nginx服务器上配置
配置文件中添加

location ~ /udata/.*\.(jpg|gif|png|jpeg|p12)$ {
    log_not_found off;
    expires 7d ;
    access_log off;
    proxy_store on;
    proxy_store_access user:rw group:rw all:rw;
    proxy_pass http://imglib.exapmle.com;
}

同时也要在hosts文件中添加解析
这里写图片描述
这时通过外网的服务器就可以访问到内网服务器的图片了

实现方式也可以用nfs挂载的方式,但是如果nfs出现问题,影响的会所有挂载的服务器,所以我们用的nginx的代理方式。

猜你喜欢

转载自blog.csdn.net/m0_37886429/article/details/81152627
今日推荐