【问题标题】:How to setup MinIO Server to use Virtual Hosted-Style如何设置 MinIO Server 以使用 Virtual Hosted-Style
【发布时间】:2020-01-14 18:59:46
【问题描述】:

我正在使用 aws-sdk-go (https://github.com/aws/aws-sdk-go) 连接 AWS S3。我还想通过相同的代码支持 MinIO (http://minio.io/)。但由于我的一些限制,我不能在配置中使用 S3ForcePathStyle 标志。有什么方法可以设置我的 MinIO 服务器以支持 Virtual Hosted-Style 路径?

附:我还尝试按照此处的说明设置 MINIO_DOMAIN 环境变量https://docs.min.io/docs/minio-server-configuration-guide.html

提前致谢!

【问题讨论】:

    标签: minio aws-sdk-go


    【解决方案1】:

    默认情况下,MinIO 支持http://example.com/bucket/object 格式的路径样式请求。 MINIO_DOMAIN 环境变量用于启用虚拟主机样式的请求。如果您配置MINIO_DOMAIN,MinIO 将支持来自客户端的路径样式和虚拟主机样式请求。

    export MINIO_DOMAIN=mydomain.com
    minio server /data
    

    【讨论】:

    • 我按照您的建议添加了一个环境变量,但这会在我的机器上导致 CORS 冲突,因为 sdk 将请求发送到 .mydomain.com 实际上,当我添加第二个 DNS 条目以支持子域,CORS 预检检查通过,但是我只看到存储桶的描述,而不是它的内容。 Minio 似乎没有切换到虚拟主机样式。我可以通过将相应的路径应用于 GET 请求来重现 Postman 的输出:projects.facerec.local:9000/projects你是如何解决这个问题的?
    • @Omnibyte 就我而言,我只希望 aws-sdk-go 代码调用 MinIO 服务器。它纯粹是后端,所以我没有遇到任何 CORS 问题。对于您的情况,也许您可​​以使用代理,例如http://example.com/call-minio?path=http://bucket.minio-host.com/objecthttp://example.com/call-minio?path=http://minio-host.com/bucket/object,然后通过后端处理请求。可能有更好的方法来处理您的问题。希望这会有所帮助:)
    猜你喜欢
    • 1970-01-01
    • 2013-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-19
    • 2019-08-20
    • 2015-03-06
    • 1970-01-01
    相关资源
    最近更新 更多