Base de conhecimento
1000 perguntas frequentes, 500 tutoriais e vídeos explicativos. Aqui, você encontra apenas soluções!
Utilizar cabeçalhos para otimizar o armazenamento em cache dos recursos
Este guia explica como otimizar o armazenamento em cache de recursos web por meio dos cabeçalhos HTTP.
Introdução
- Uma boa estratégia de cache permite melhorar significativamente o desempenho do seu site, evitando a retransmissão desnecessária de arquivos inalterados.
- O cache web baseia-se em dois mecanismos complementares:
- O período de validade do cache (através do cabeçalho
Expires), que indica por quanto tempo um recurso pode ser reutilizado sem contactar o servidor. - A validação condicional (através dos cabeçalhos
Last-Modified/If-Modified-Since), que permite verificar se um recurso foi alterado antes de ser baixado novamente.
- O período de validade do cache (através do cabeçalho
Configuração da duração do cache com Expires
O cabeçalho Expires permite especificar um período durante o qual o navegador pode reutilizar diretamente os recursos do seu cache local. Veja como configurá-lo no seu arquivo .htaccess:
- Crie ou abra o arquivo
.htaccessna raiz do seu site (geralmente em/webou/sites/domain.xyz). Adicione a configuração do módulo
expires:<IfModule mod_expires.c>Defina os períodos de cache adequados para cada tipo de recurso:
ExpiresActive On ExpiresByType text/html "access plus 1 week" ExpiresByType image/jpeg "access plus 1 month" ExpiresByType text/css "access plus 1 month" ExpiresByType application/javascript "access plus 1 month"Estas diretivas significam que:
- As páginas HTML serão armazenadas em cache durante uma semana.
- As imagens JPEG, os ficheiros CSS e JavaScript serão armazenados durante um mês.
Ajuste estes períodos de acordo com a frequência com que os seus recursos são atualizados.
Feche a secção de configuração:
</IfModule>
Validação condicional com Last-Modified
Mesmo quando um recurso expirou no cache, nem sempre é necessário baixá-lo novamente por completo. O mecanismo de validação condicional permite que o navegador verifique se a sua versão em cache ainda está atualizada. Este processo funciona da seguinte forma:
- O servidor envia automaticamente um cabeçalho
Last-Modifiedcom cada recurso, indicando a data da última modificação.- O Apache gerencia isso nativamente para arquivos estáticos – nenhuma configuração adicional é necessária.
Quando o navegador solicita novamente o recurso, ele envia um cabeçalho
If-Modified-Sincecontendo a data que tem em cache:GET /resource HTTP/1.1 Host: www.example.com If-Modified-Since: Wed, 21 Oct 2015 07:28:00 GMT- O servidor compara esta data com a data real de modificação do arquivo:
- Se o arquivo não foi alterado, ele simplesmente retorna um código
304 Not Modified, economizando assim largura de banda. - Se o arquivo foi modificado, ele retorna a nova versão com um código
200 OK.
- Se o arquivo não foi alterado, ele simplesmente retorna um código
Link para esta FAQ: https://faq.infomaniak.com/1282
Esta seção de perguntas frequentes foi útil?