如何通过固定IP访问阿里云OSS

背景介绍

在某些场景会需要为OSS提供一个固定IP提供给用户访问,比如客户要求提供OSS固定IP进行客户层面的白名单授权,阿里云的OSS提供的是域名方式访问的而域名背后对应的IP是动态的不可控的,在OSS有维护或者遭受网络攻击等场景都会更换IP,所以阿里云服务端层面是无法固定OSS的IP的。

面对这种场景,如果我们不能给客户提供一个固定的OSS IP 可能会导致客户无法给访问我们的资源带来一系列问题。所以针对这种场景我们可以使用nginx反向代理来实现。

实现逻辑

首先在阿里云置备两台ECS,在ECS上搭建nginx,nginx最好做成集群可以增加稳定性。然后可以使用阿里云的公网SLB作为访问入口

nginx配置文件如下

server {
    
    
	listen 9101; # 设定监听端口
	location / {
    
    
		 add_header Access-Control-Allow-Origin *;
         add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
         add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
		if ($args ~* (.*)h_[0-9]+\,w_[0-9]+\?rs=([0-9]+)_([0-9]+)*) {
    
    
        		set $args $1h_$3,w_$2;
        	}
		proxy_pass http://xxxx.oss-cn-hangzhou-internal.aliyuncs.com;
                proxy_ignore_client_abort on;
	}
}

SLB 配置如下

需购买一个阿里云公网SLB

在SLB创建虚拟服务器组,将监听端口以及自建的nginx服务器添加进去

在这里插入图片描述
然后添加监听,将SLB的80端口转发至后端服务器组
在这里插入图片描述
验证没问题后 就可以把SLB的公网IP提供给客户了

猜你喜欢

转载自blog.csdn.net/Habo_/article/details/128838007