nginx 反向代理minio错误排查

错误1

在使用预签名时出现以下错误:

<?xml version="1.0" encoding="UTF-8"?>
<Error>
    <Code>SignatureDoesNotMatch</Code>
    <Message>The request signature we calculated does not match the signature you provided. Check your key and signing method.</Message>
    <Key>25ddd455-0f47-414c-8f32-40a4f9dab2ad.jpg</Key>
    <BucketName>object-images</BucketName>
    <Resource>/object-images/25ddd455-0f47-414c-8f32-40a4f9dab2ad.jpg</Resource>
    <RequestId>171DC9F70242E7B9</RequestId>
    <HostId>e018e642-71a1-41f3-bd47-e20d6c2ad4f1</HostId>
</Error>

错误原因:
错误的将MINIO_HOST指定成ip:port,前端上传时使用域名上传就会出现以上错误
正确的方法是签名和上传时应该统一,使用ip:port或域名,不能混用

minio_client = Minio(
    MINIO_HOST,
    access_key=MINIO_ACCESS_KEY,
    secret_key=MINIO_SECRET_KEY,
    secure=MINIO_SECURE
)

错误2

urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='xxx.com', port=443): 
Max retries exceeded with url: /object-images?location= (Caused by 
SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] 
certificate verify failed: unable to get local issuer certificate (_ssl.c:1129)')))

指定http_client即可

http_client = urllib3.PoolManager(
    timeout=urllib3.util.Timeout(connect=10, read=10),
    maxsize=10,
    cert_reqs='CERT_NONE',
    ca_certs=os.environ.get('SSL_CERT_FILE') or certifi.where(),
    retries=urllib3.Retry(
        total=5,
        backoff_factor=0.2,
        status_forcelist=[500, 502, 503, 504]
    )
)

minio_client = Minio(
    MINIO_HOST,
    access_key=MINIO_ACCESS_KEY,
    secret_key=MINIO_SECRET_KEY,
    http_client=http_client,
    secure=MINIO_SECURE
)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

llc的足迹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值