Я хочу как-то передать имя сегмента в aws_s3_bucket и proxy_pass и заменить область на aws_key_scope, если сегмент находится в другом регионе, чтобы он работал для нескольких сегментов без запуска нескольких контейнеров - каждый с различной конфигурацией.Приведенная ниже конфигурация работает, как и ожидалось, но она настроена на одно статическое ведро.Таким образом, чтобы получить доступ к файлу из определенного в конфиге конфига, я должен вызвать http://IP_or_hostname/file,, что я хочу, это http://IP_or_file/$bucket/file. Это основано на модуле https://github.com/anomalizer/ngx_aws_auth, который не поддерживает переменные какупоминается здесь: https://github.com/anomalizer/ngx_aws_auth/issues/49. Возможно ли это с Nginx?
worker_processes 1;
events {
worker_connections 1024;
}
http {
server {
listen 80;
client_max_body_size 100G;
aws_access_key 'AKI';
aws_signing_key "xyz";
aws_key_scope "20190226/eu-west-2/s3/aws4_request";
aws_s3_bucket 'bucket_name';
location / {
aws_sign;
aws_access_key "AKI";
aws_signing_key "xyz";
aws_key_scope "20190226/eu-west-2/s3/aws4_request";
aws_endpoint "s3.eu-west-2.amazonaws.com";
proxy_pass http://bucket_name.s3.eu-west-2.amazonaws.com/;
resolver 8.8.8.8 valid=300s;
resolver_timeout 10s;
}
}
}