Eu tenho um servidor django na instância do EC2 que serve muitos clientes via API REST. Eu 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 é bem testado, usado por centenas de servidores, e funcionou perfeitamente nos últimos dois meses. Eu confio que funciona 100%.
Ontem, de repente, todos os nossos clientes receberam 502 códigos de retorno 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."
Este é 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 poderia ter acontecido? Por que o Amazon EC2 repentinamente temperaria com meu tráfego de saída? E o mais importante - como posso evitar isso no futuro? Eu não vi nada nos logs para explicar isso (não no django e não no nginx), e como isso aconteceu por conta própria e parou sozinho, eu suspeito que ele esteja relacionado ao Amazon. Talvez algo a ver com seu roteamento interno ou balanceamento de carga?
Obrigado,
Tags nginx amazon-ec2 django