ECS上搭建反向代理通过内网访问OSS服务
时间:2016-01-03 00:45 来源:linux.it.net.cn 作者:IT
在ECS上用Nginx做反向代理,通过内网访问OSS。
原理说明:
1、用户通过ECS公网ip,或者域名,访问ECS上的Nginx。
2、Nginx收到用户的访问请求后,根据Nginx的代理设置,通过OSS的内网地址,访问OSS。正常访问到OSS的资源后,把数据返回给用户。
配置中最重要的环节是Nginx反向代理设置。
本教程以Centos7 Linux系统为例:
1) 在ECS上安装Nginx
yum install nginx
2) 安装好Nginx后,修改配置文件。
vim /etc/nginx/nginx.conf
在server 配置段中,添加反向代理的设置。
location / {
rewrite /(.+)$ /$1 break;
proxy_pass http://***.oss-cn-beijing-internal.aliyuncs.com;
}

配置说明:
rewrite /(.+)$ /$1 break; 用rewrite进行url重写,使用户访问的url后缀,也传递到OSS上。
proxy_pass http://***.oss-cn-beijing-internal.aliyuncs.com; 代理请求到这个OSS的内网地址,星号注释的是用户是bucket名。
这个内网地址怎么得到呢?
OSS有提供内网和外网访问地址【点此查看】
从这里找到对应节点的内网地址,然后在内网地址前,加上对应的bucket名即可。
例如:Bucket名称+OSS内网地址
示例中的OSS是北京地域,bucket名称是bj-1,
OSS北京节点的内网地址是oss-cn-beijing-internal.aliyuncs.com,
所以bucket bj-1对应的内网访问地址是bj-1.oss-cn-beijing-internal.aliyuncs.com
3)配置好Nginx后,重启Nginx
systemctl restart nginx.service
4)在浏览器上,通过ECS的公网ip访问。
访问地址和直接访问OSS类似,只是把url中OSS的域名,改成ECS公网ip或者ECS绑定的域名。
例如正常访问OSS的地址是:http://***.oss-cn-beijing.aliyuncs.com/html/nginx.html
通过Nginx代理访问是:http://ECS公网ip/html/nginx.html
测试访问ECS,可以正常访问到OSS上的文件。

(责任编辑:IT)
在ECS上用Nginx做反向代理,通过内网访问OSS。 原理说明: 1、用户通过ECS公网ip,或者域名,访问ECS上的Nginx。 2、Nginx收到用户的访问请求后,根据Nginx的代理设置,通过OSS的内网地址,访问OSS。正常访问到OSS的资源后,把数据返回给用户。 配置中最重要的环节是Nginx反向代理设置。 本教程以Centos7 Linux系统为例: 1) 在ECS上安装Nginx yum install nginx 2) 安装好Nginx后,修改配置文件。 vim /etc/nginx/nginx.conf 在server 配置段中,添加反向代理的设置。 location / { rewrite /(.+)$ /$1 break; proxy_pass http://***.oss-cn-beijing-internal.aliyuncs.com; } ![]() 配置说明: rewrite /(.+)$ /$1 break; 用rewrite进行url重写,使用户访问的url后缀,也传递到OSS上。 proxy_pass http://***.oss-cn-beijing-internal.aliyuncs.com; 代理请求到这个OSS的内网地址,星号注释的是用户是bucket名。 这个内网地址怎么得到呢? OSS有提供内网和外网访问地址【点此查看】 从这里找到对应节点的内网地址,然后在内网地址前,加上对应的bucket名即可。 例如:Bucket名称+OSS内网地址 示例中的OSS是北京地域,bucket名称是bj-1, OSS北京节点的内网地址是oss-cn-beijing-internal.aliyuncs.com, 所以bucket bj-1对应的内网访问地址是bj-1.oss-cn-beijing-internal.aliyuncs.com 3)配置好Nginx后,重启Nginx systemctl restart nginx.service 4)在浏览器上,通过ECS的公网ip访问。 访问地址和直接访问OSS类似,只是把url中OSS的域名,改成ECS公网ip或者ECS绑定的域名。 例如正常访问OSS的地址是:http://***.oss-cn-beijing.aliyuncs.com/html/nginx.html 通过Nginx代理访问是:http://ECS公网ip/html/nginx.html 测试访问ECS,可以正常访问到OSS上的文件。 ![]() (责任编辑:IT) |