Отказано в доступе для запроса данных из контейнера s3 при высокой нагрузке

Отказано в доступе для запроса данных из контейнера s3 при высокой нагрузке

Я пытаюсь извлечь статические файлы из корзины s3 в случае ошибки 502.

Вот как я настроил nginx для запросов:

error_page 502 = @static;
location / {
  index index.php;
  try_files $uri $uri/ /index.php;
# return 502;
  proxy_intercept_errors on;
}

location @static{
  rewrite ^/name/(.*) ^/bucket_name/$1 break;
  proxy_pass http://s3.amazonaws.com;
}

Ошибка 502 возникает, когда nginx не может справиться с большой нагрузкой.

Теперь, когда я раскомментирую оператор «return 502» и комментирую оператор try_files, все в порядке, и данные правильно обрабатываются контейнером s3.

Но когда для приведенного выше кода я увеличиваю нагрузку на сайт с помощью loader.io (я проверил, он выдает ошибку 502), браузер получает ошибку 403 (403 Forbidden).

И это доброе сообщение отображается в браузере,

<Error>
  <Code>AccessDenied</Code>
  <Message>Access Denied</Message>
  <RequestId>some_string</RequestId>
  <HostId>
    something
  </HostId>

А когда я раскомментирую «return 502» и закомментирую «try_files statement» и увеличиваю нагрузку, s3 по-прежнему правильно обслуживает файлы.

Есть идеи, почему я получаю ошибку 403 из-за большой нагрузки, но такой ошибки нет, когда вручную возвращаю 502? Кроме того, есть ли другой альтернативный стиль для извлечения данных из контейнера s3 в случае большой нагрузки (ошибка 502)? Также являются ли ошибки 502, отправленные вручную и из-за большой нагрузки, одинаковыми?

Связанный контент