Re: Как использовать Nginx в качестве прокси для S3 совместимого хранилища?

Илья Шипицин chipitsine на gmail.com
Ср Дек 14 12:53:21 UTC 2016


14 декабря 2016 г., 17:41 пользователь Alexandr Porunov <
alexandr.porunov на gmail.com> написал:

> Всем привет,
>
> Я хочу использовать Nginx в качестве прокси для S3 совместимого хранилища
> с 4 версией подписи (Amazon s3 signature version 4).
>
> Я новичёк в Nginx, но попробую обьяснить что я хочу сделать.
>
> У меня есть 3 сервера:
>
> mydomain.com - публичный сервер с запущенным Nginx
> s3storage - приватный сервер с хранилищем с S3 API
> client - клиент который хочет использовать S3 хранилище через Nginx (т.е.
> через домен mydomain.com). Этот клиент умеет работать только с 4 версией
> S3 подписи.
>
> Таким образом клиент отправляет примерно такие запросы к Nginx:
>  https://<bucket>.mydomain.com/<my_files>
>
> где <bucket> - имя бакета и <my_files> - имя файла (если есть).
>
> Я должен иметь возможность как-то правильно проксировать эти запросы с
> mydomain.com к s3storage (у s3storage IP 192.168.0.45).
>
> Проблема в том что имя бакета находиться в URL, а не в пути. Не понятно
> как правильно проксировать такие запросы чтобы подпись оставалась целой и
> чтобы можно было получать файлы с s3storage.
>

каким образом использовать бакет, в днс или в пути - это на усмотрение
клиента, допустимы оба варианта

http://stackoverflow.com/questions/16938683/


(пример для клиента на c#)

    AmazonS3Config S3Config = new AmazonS3Config()
    {
        ServiceURL = "s3.amazonaws.com",
        ForcePathStyle = true,
        RegionEndpoint = region
    };

более предсказуемая схема - перевести клиента и сервер на
единообразный механизм. иначе подпись будет биться
(и не совсем понятно, почему это надо чинить на nginx в транзите)





>
> Если кто-то знает как правильно настроить Nginx, то подскажите, пожалуйста
>
> С уважением,
> Александр
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru на nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
>
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20161214/f10d7ea4/attachment.html>


Подробная информация о списке рассылки nginx-ru