Eu tenho uma distribuição do CloudFront configurada com um servidor Nginx como a origem (um servidor Media Temple DV, para ser específico). Ativei o cabeçalho Access-Control-Allow-Origin: *
para que as fontes funcionem no Firefox. No entanto, o Firefox lança um erro CORS para fontes carregadas dessa distribuição do CloudFront / Nginx.
Eu criei outra distribuição do CloudFront, desta vez com um servidor Apache como origem, e defina Access-Control-Allow-Origin: *
também. O Firefox exibe fontes dessa origem sem problemas.
Eu configurei uma página de demonstração aqui: link
Quando executo uma solicitação curl
para o mesmo arquivo de fonte de cada distribuição, os dois arquivos retornam quase exatamente os mesmos cabeçalhos:
Apache Origin Nginx Origin
——————————————————— ———————————————————
HTTP/1.1 200 OK HTTP/1.1 200 OK
Server: Apache Server: nginx
Content-Type: application/font-woff Content-Type: application/font-woff
Content-Length: 25428 Content-Length: 25428
Connection: keep-alive Connection: keep-alive
Date: Wed, 11 Jun 2014 23:23:09 GMT Date: Wed, 11 Jun 2014 23:15:23 GMT
Last-Modified: Tue, 10 Jun 2014 22:15:56 GMT Last-Modified: Tue, 10 Jun 2014 22:56:09 GMT
Accept-Ranges: bytes Accept-Ranges: bytes
Cache-Control: max-age=2592000 Cache-Control: max-age=2592000
Expires: Fri, 11 Jul 2014 23:23:09 GMT Expires: Fri, 11 Jul 2014 23:15:23 GMT
Access-Control-Allow-Origin: * Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: GET, HEAD Access-Control-Allow-Methods: GET, HEAD
Access-Control-Allow-Headers: * Access-Control-Allow-Headers: *
Access-Control-Max-Age: 3000 Access-Control-Max-Age: 3000
X-Cache: Hit from cloudfront X-Cache: Hit from cloudfront
Via: 1.1 210111ffb8239a13be669aa7c59f53bd.cloudfront.net (CloudFront) Via: 1.1 fa0dd57deefe7337151830e7e9660414.cloudfront.net (CloudFront)
X-Amz-Cf-Id: QWucpBoZnS3B8E1mlXR2V5V-SVUoITCeVb64fETuAgNuGuTLnbzAhw== X-Amz-Cf-Id: E2Z3VOIfR5QPcYN1osOgvk0HyBwc3PxrFBBHYdA65ZntXDe-srzgUQ==
Age: 487
X-Accel-Version: 0.01
X-Powered-By: PleskLin
X-Robots-Tag: noindex, nofollow
Portanto, a única conclusão que posso tirar é que algo sobre o Nginx está impedindo o Firefox de reconhecer o CORS e permitir as fontes através do CloudFront.
Alguma idéia sobre o que está acontecendo aqui?