
Estou tentando buscar arquivos estáticos do bucket s3 em caso de erro 502.
Foi assim que configurei o nginx para solicitações:
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;
}
O erro 502 é enviado quando o nginx não consegue lidar com uma carga enorme.
Agora, quando descomentei a instrução 'return 502' e comento a instrução try_files, está tudo bem e os dados são servidos corretamente pelo bucket s3.
Mas quando para o código fornecido acima, quando aumento a carga no site usando loader.io (verifiquei que gera erro 502), o navegador recebe erro 403 (403 Proibido).
E esta gentil mensagem é exibida no navegador,
<Error>
<Code>AccessDenied</Code>
<Message>Access Denied</Message>
<RequestId>some_string</RequestId>
<HostId>
something
</HostId>
E quando eu descomento 'return 502' e comento 'try_files statement' e aumento a carga, o s3 ainda serve os arquivos corretamente.
Alguma ideia, por que estou recebendo o erro 403 devido à carga pesada, mas esse erro não ocorre quando retorno manualmente o 502? Além disso, existe algum outro estilo alternativo para buscar dados do bucket s3 em caso de carga pesada (erro 502)? Os erros 502 também são enviados manualmente e devido à carga pesada mesmo?