Estamos nos deparando com um problema quando nossos cookies atingem um determinado tamanho (acima de 7k), em que o nginx está retornando 400 solicitações inválidas com uma resposta vazia ao fazer proxy no nosso tomcat. Isso não acontece quando o nginx está servindo o conteúdo estático. Nós já tentamos atualizar a configuração do nginx para aumentar o tamanho do buffer, então ele deve lidar com cabeçalhos individuais de até 16k (também tentamos configurá-lo no nível do servidor):
http {
# ...
client_body_buffer_size 32k;
client_header_buffer_size 16k;
large_client_header_buffers 4 16k;
# ...
}
Também aumentamos o tomcat max-http-header-size para 16k. Se aumentarmos o tamanho do cookie para mais de 16k, ainda receberemos uma solicitação incorreta de 400, mas a resposta terá a mensagem de erro "Solicitar cabeçalho ou cookie muito grande". Algo estranho está acontecendo entre tamanhos de cabeçalho de 8k e 16k que não conseguimos descobrir.