minio预签名访问地址经过Nginx代理后返回403问题

使用MinioClient的getPresignedObjectUrl方法生成文件预签名的授权访问地址,直接使用MinioClient的endpoint域名或ip访问时正常,但是把endpoint的ip替换为经过nginx代理过的域名后,请求返回403。

原因:签名时的host与实际访问时的host不一致

解决方案:

修改nginx,minio代理部分,加入proxy_set_header ,确保与你代码里MinioClient的endpoint一致,这样minio收到的host就是原始host

bash 复制代码
        location / {  
			proxy_pass http://192.168.1.128:9000/;
            index  index.html index.htm;
			
			# 原始的内部地址
			proxy_set_header Host 192.168.1.128:9000;
			
			# 其他必要的头部
			proxy_set_header X-Real-IP $remote_addr;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			proxy_set_header X-Forwarded-Proto $scheme;
		}
相关推荐
乾元17 小时前
RAG 架构: 利用向量数据库构建企业的安全知识库
运维·网络·数据库·人工智能·安全·网络安全·架构
somi717 小时前
Linux-基于网络爬虫技术的天气数据查询
linux·运维·服务器
袁小皮皮不皮18 小时前
【HCIA】第一章网络基础
运维·服务器·网络·网络协议·智能路由器
ascarl201018 小时前
Kylin V10 服务器,解决Xorg 占用内存很高的问题
服务器·github·kylin
AI周红伟18 小时前
周红伟:OpenClaw+ 微信+ QQ+云上OpenClaw(Clawdbot)快速接入企业微信指南
运维·服务器·网络
ZStack开发者社区18 小时前
技术解析:ZStack 计算 + 存储双利旧,破解数据中心异构纳管与资产浪费痛点
服务器·云计算
bug攻城狮18 小时前
Docker高级篇04:Docker网络
网络·docker·php
数通工程师18 小时前
搞定数通设备账号安全:登录审计、紧急踢线、故障排查与配置规范
运维·网络·网络协议·安全·网络安全
桌面运维家18 小时前
Linux网络负载均衡:Nginx实战优化Web性能
linux·网络·负载均衡
Nuopiane18 小时前
Pal3.Unity开源项目复刻(八)其余
java·服务器·前端