OSS 使用ESC内网进行上传和访问

文章目录

  • 介绍
  • OSS 内网上传
  • OSS内网访问,依靠Nginx代理
  • 缺点

介绍

OSS如果通过外网访问,流量费用不菲,本着为客户省钱的原则,使用Nginx内网请求转发来访问OSS。

前提

ECS 和 OSS 的Bucket必须处于同一地域

OSS 内网上传

使用内网Endpoint,例如: oss-cn-shanghai-internal.aliyuncs.com

注意: 本地无效,必须在同地域的ECS上才能正常上传

参考:https://help.aliyun.com/knowledge_detail/39584.html?spm=5176.2000002.0.0.5be425a7vjEOP2

OSS内网访问,依靠Nginx代理

  • 注意:必须使用下面这种配置方式,否则反向代理会出现The specified key does not exist 导致外网可访问, 反向代理内网无法访问

      	server
      	{
      		listen 1234;
      			server_name 47.88.123.123;
      			index index.php index.html index.htm default.php default.htm default.html;
      			root /www/wwwroot/www.test.com;
    
      			#SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
      			#error_page 404/404.html;
      			#SSL-END
    
      			#ERROR-PAGE-START  错误页配置,可以注释、删除或修改
      			error_page 404 /404.html;
      			error_page 502 /502.html;
      			#ERROR-PAGE-END
    
      			#PHP-INFO-START  PHP引用配置,可以注释或修改
      			include enable-php-72.conf;
      			#PHP-INFO-END
    
      			#REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效
      			include /www/server/panel/vhost/rewrite/www.test.com.conf;
      			#REWRITE-END
    
    
      			#禁止访问的文件或目录
      			location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)
      			{
      					return 404;
      			}
    
      			#一键申请SSL证书验证目录相关设置
      			location ~ \.well-known{
      					allow all;
      			}
    
      			access_log  /www/wwwlogs/www.test.com.log;
      			error_log  /www/wwwlogs/www.test.com.error.log;
    
      			location / {
      				proxy_pass http://yunqiao-test.oss-cn-hangzhou-internal.aliyuncs.com;
      		}    
    
      	}    
    

访问示例 : 域名(Ip+端口) + 文件地址

http://47.88.123.123:1234/image/avatar/201903/19/201903192323th5c91098d53d38.png

建议通过域名访问,然后再进行内网转发

缺点

会占用ECS的带宽

你可能感兴趣的:(工作日志)