14 декабря 2016 г., 17:41 пользователь Alexandr Porunov < alexandr.poru...@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 >
_______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru