Eu tenho um servidor Django na instância EC2 que atende muitos clientes via REST API. Coloquei um middleware no Django para permitir o controle de acesso de qualquer lugar adicionando automaticamente cabeçalhos de controle de acesso em todas as respostas.
O middleware foi bem testado, usado por centenas de servidores e funcionou perfeitamente nos últimos meses. Confio que funciona 100%.
Ontem, de repente, todos os nossos clientes obtiveram o código de retorno 502 em todas as nossas APIs. Olhando para o erro no Chrome, vemos"No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'xxx' is therefore not allowed access."
Esse é o tipo de mensagem que eu esperaria ver se não fosse pelo middleware. Mas eu sei que funciona. Depois de algumas horas o problema parou sozinho, sem que eu fizesse nada.
Então, minha pergunta é: como isso pôde ter acontecido? Por que o Amazon EC2 de repente moderou meu tráfego de saída? E o mais importante: como posso evitar isso no futuro? Não vi nada nos logs para explicar isso (nem no Django e nem no nginx), e como aconteceu por conta própria e parou por conta própria, suspeito que seja relacionado à Amazon. Talvez algo relacionado ao roteamento interno ou balanceamento de carga?
Obrigado,