Bem, sim, o nginx está combinando os cabeçalhos com nomes idênticos ... mas está fazendo isso de acordo com a especificação HTTP. Veja a seção 4.2 .
O cabeçalho:
Access-Control-Allow-Origin: http://dev.anuary.com, https://dev.anuary.com
É, de acordo com a especificação HTTP / 1.1, funcionalmente equivalente a:
Access-Control-Allow-Origin: http://dev.anuary.com
Access-Control-Allow-Origin: https://dev.anuary.com
Se você tiver um sistema ou aplicativo capaz de ler um formato e não o outro, esse é o problema. O nginx está fazendo certo.
EDITAR :
A documentação da Mozilla afirma que só pode haver um cabeçalho Access-Control-Allow-Origin
.
A formatação ( veja aqui ) deve ser uma lista delimitada por espaço de origens:
add_header Access-Control-Allow-Origin "http://dev.anuary.com https://dev.anuary.com";
Mas, na verdade, você deveria estar ecoando o cabeçalho Origin
fornecido pelo cliente em vez de gerar um fora do azul. Isso é provavelmente mais apropriado:
if ($http_origin ~* "^https?://dev\.anuary\.com$" ) {
add_header Access-Control-Allow-Origin $http_origin;
}