某品牌OSS存储,使用IP+PORT可以正常访问。使用NG代理后,不论是IP还是域名访问都不支持SDK访问,但是使用S3客户端可以正常访问。

通过抓包对比发现,S3客户端如下

SDK访问抓包如下

判断是由于两种访问方式加密方法不一样导致。S3默认采用版本较低的V2版本加密方法而不是V4,V4除了校验 HTTP请求中HEADER中的host字段外,还会要求HTTP请求中REQUEST.URI。

最终的解决方法要么使应用使用V2版本加密方式。

要么使存储支持域名形式访问。这样可以做到经过NG代理后,request中的uri不变,同时需要配合 proxy_set_header 设置请求的header,在ingress中,要使用注解 upstream_vhost.如果使非标准80、443端口,proxy_set_header字段还要加上端口号。

https://www.cnblogs.com/hiyang/p/12631922.html

https://www.dovefi.com/post/s3对象存储aws4签名分析与实现/

最新文章

  1. 用SignalR 2.0开发客服系统[系列2:实现聊天室]
  2. python发送邮件
  3. mvc url 伪静态
  4. iOS阶段学习第19天笔记(协议-Protocol)
  5. Python常用模块之sys
  6. PAT乙级 1003. 我要通过!(20)
  7. hdu 1116 Play on Words 欧拉路径+并查集
  8. solr-tomcat 中文乱码
  9. latex如何输入正确的 双引号
  10. selenium之多线程启动grid分布式测试框架封装(四)
  11. 201521123074 《Java程序设计》第7周学习总结
  12. Codeforces Round #345(Div. 2)-651A.水题 651B.。。。 651C.去重操作 真是让人头大
  13. WebLogic11g-集群相关概念
  14. python之six用法
  15. 【原】HDMI输出接口传输速率计算
  16. HDU4864 Task(算竞进阶习题)
  17. openjdk for window
  18. Linux mount 修改文件系统的读写属性
  19. textarea 标签 属性
  20. [整理]IIS 6.0 下部署 Asp.net MVC Web Api 后 HTTP PUT and DELETE 请求失败

热门文章

  1. CF1768F 题解
  2. Intellij IDEA远程debug
  3. (app笔记)Appium如何开启、配置、启用
  4. Oralyzer-20220205
  5. 微积分 I 笔记
  6. RBAC(DAC)模型
  7. Quartz 2D实现文字镂空效果
  8. Java包机制 与Javados 命令
  9. es的核心原理 (一)
  10. ElasticSearch入门学习笔记