Bueno, sí, nginx combina los encabezados con nombres idénticos ... pero lo hace de acuerdo con la especificación HTTP. Ver sección 4.2 .
El encabezado:
Access-Control-Allow-Origin: http://dev.anuary.com, https://dev.anuary.com
Es, de acuerdo con la especificación HTTP / 1.1, funcionalmente equivalente a:
Access-Control-Allow-Origin: http://dev.anuary.com
Access-Control-Allow-Origin: https://dev.anuary.com
Si tiene un sistema o aplicación que es capaz de leer un formato y no el otro, entonces ese es el problema. nginx lo está haciendo bien.
EDITAR :
La documentación de Mozilla establece que solo puede haber un Access-Control-Allow-Origin
encabezado.
El formato de la misma ( ver aquí ) debe ser una lista de orígenes delimitados por espacios:
add_header Access-Control-Allow-Origin "http://dev.anuary.com https://dev.anuary.com";
Pero realmente, se supone que debes hacer eco del Origin
encabezado proporcionado por el cliente en lugar de generar uno de la nada. Esto es probablemente más apropiado:
if ($http_origin ~* "^https?://dev\.anuary\.com$" ) {
add_header Access-Control-Allow-Origin $http_origin;
}