用s3客户端请求minio返回403

先介绍下我的环境
是用docker跑的minio单节点
外部请求通过nginx进来
然后用s3客户端请求时会出现这个错误

The request signature we calculated does not match the signature you provided. Check your key and signing method. (Service: Amazon S3; Status Code: 403; Error Code: SignatureDoesNotMatch; Request ID: 168CA9750BE6D890; S3 Extended Request ID: 2cce05c1-5205-4cbe-bd1b-334f32bddcdf; Proxy: null)

发现这位老哥通过直接开放minio容器的端口解决了这个问题:
https://github.com/minio/minio-js/issues/794

那可能是跟nginx的配置有关系,因为直接启动minio去访问是正常的

那加上请求头里的host试试

proxy_set_header Host $http_host;

    location / {
       proxy_pass http://minio:9000;
       proxy_set_header Host $http_host;
       proxy_connect_timeout 15s;
       proxy_send_timeout 15s;
       proxy_read_timeout 15s;
       proxy_set_header X-Forwarded-Proto http;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

重启下nginx发现恢复正常

问题解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值