turicas/brasil.io
View on GitHubCorrigir cabeçalhos HTTP para que cache da CloudFlare funcione
Open
#341 opened on Jun 28, 2020
enhancementhelp wantedinfra
Repository metrics
- Stars
- (1,032 stars)
- PR merge metrics
- (PR metrics pending)
Description
Por algum motivo as requisições à API estão indo todas para o servidor. Mesmo com o cabeçalho Cache-Control sendo devolvido pelo Django, a CDN (CloudFlare) adiciona o cabeçalho CF-Cache-Status: DYNAMIC, que indica que a requisições chegou até o servidor (veja mais detalhes).
Como a quantidade de requisições à API é muito maior que ao site, precisamos corrigir esse comportamento para que a CDN segure boa parte das requisições.
$ wget -O /dev/null --server-response https://brasil.io/api/dataset/covid19/caso/data/
--2020-06-28 20:11:49-- https://brasil.io/api/dataset/covid19/caso/data/
Resolving brasil.io (brasil.io)... 2606:4700:20::ac43:472d, 2606:4700:20::681a:9af, 2606:4700:20::681a:8af, ...
Connecting to brasil.io (brasil.io)|2606:4700:20::ac43:472d|:443... connected.
HTTP request sent, awaiting response...
HTTP/1.1 200 OK
Date: Sun, 28 Jun 2020 23:11:50 GMT
Content-Type: application/json
Transfer-Encoding: chunked
Connection: keep-alive
Set-Cookie: __cfduid=d9bafd491b892cdb3ccedda6c2f2ca9b41593385910; expires=Tue, 28-Jul-20 23:11:50 GMT; path=/; domain=.brasil.io; HttpOnly; SameSite=Lax; Secure
Vary: Accept-Encoding
Vary: Accept, Cookie, Origin
Allow: GET, HEAD, OPTIONS
X-Frame-Options: DENY
Expires: Sun, 28 Jun 2020 23:25:13 GMT
Cache-Control: max-age=900
X-Content-Type-Options: nosniff
Strict-Transport-Security: max-age=15724800; includeSubdomains
CF-Cache-Status: DYNAMIC
cf-request-id: 039ecc97a00000f5eb5f2a0200000001
Expect-CT: max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
Server: cloudflare
CF-RAY: 5aab16d29d61f5eb-GRU
alt-svc: h3-27=":443"; ma=86400, h3-28=":443"; ma=86400, h3-29=":443"; ma=86400
Length: unspecified [application/json]
Saving to: ‘/dev/null’