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

Alexandr Porunov alexandr.porunov на gmail.com
Ср Дек 14 12:41:06 UTC 2016


Всем привет,

Я хочу использовать 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.

Если кто-то знает как правильно настроить Nginx, то подскажите, пожалуйста

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


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