Cache do navegador com .htaccess

A cache do navegador é a que fica no computador do visitante: se o logótipo, o CSS e o JavaScript trazem instruções de «guarde isto durante algum tempo», nas visitas seguintes o navegador nem os pede outra vez. Dá-se essa instrução com cabeçalhos HTTP, e numa conta de hospedagem faz-se no ficheiro .htaccess da raiz do site. O servidor usa LiteSpeed, que lê estas regras ao estilo Apache.

Primeiro: já não há quem faça isto por si?

Se o site é WordPress e o plugin LiteSpeed Cache está activo com «Browser Cache» ligado, o plugin já escreve estas regras no .htaccess. Acrescentar as suas por cima só duplica. Veja as primeiras definições do LiteSpeed Cache. O resto do artigo é para sites sem esse plugin: um site em PHP à mão, um site estático, ou qualquer aplicação.

Como acrescentar as regras

1 Faça uma cópia do .htaccess actual. No Gestor de Ficheiros do cPanel, ligue «Mostrar ficheiros ocultos», faça duplicar o ficheiro e dê-lhe outro nome. Um erro neste ficheiro deita o site abaixo.
2 Abra o .htaccess da raiz do site (a pasta do domínio) e acrescente o bloco abaixo fora de qualquer parte marcada com «# BEGIN» e «# END»: essas partes são geridas por plugins e reescritas.<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/webp "access plus 1 month"
ExpiresByType image/svg+xml "access plus 1 month"
ExpiresByType text/css "access plus 1 week"
ExpiresByType text/javascript "access plus 1 week"
ExpiresByType application/javascript "access plus 1 week"
ExpiresByType font/woff2 "access plus 1 month"
</IfModule>
3 Guarde e abra o site. Se aparecer um erro 500, é um erro de sintaxe: reponha a cópia. Os tempos acima são exemplos: a escolha é sua, e depende de com que frequência muda cada tipo de ficheiro.
4 Confirme nos cabeçalhos. No navegador, F12, separador Rede, recarregue a página, clique numa imagem e procure cache-control ou expires nos cabeçalhos da resposta. Ou, num terminal: curl -I https://asuaempresa.ao/logo.png (com o endereço de um ficheiro seu).
Tipo de ficheiro Muda muitas vezes? Que duração faz sentido
Imagens e logótipo Raramente. Longa.
Tipos de letra Quase nunca. Longa.
CSS e JavaScript A cada actualização do site. Média, se os nomes ou os números de versão mudarem quando o ficheiro muda.
Páginas HTML e respostas de aplicações Sim. Não ponha duração aqui. Estas páginas tratam-se pela cache de páginas, não pela do navegador.
Uma duração longa tem um preço: o visitante fica com a versão antiga. Se mudar um ficheiro de CSS e o nome for o mesmo, quem já o tem guardado continua a ver o antigo até a duração acabar. A solução é mudar o nome ou acrescentar um número de versão ao endereço, como em estilo.css?v=2. Os temas de WordPress costumam fazer isto sozinhos; num site à mão, é consigo. Para ver o que fazer quando é o seu navegador a mostrar o antigo, veja limpar a cache.
Prefere Cache-Control a Expires? Com o módulo de cabeçalhos, a regra é Header set Cache-Control "public, max-age=2592000" dentro de um FilesMatch para as extensões que quer, e o valor é em segundos. Os tipos de ficheiro que o servidor conhece estão em tipos MIME e páginas de erro.

Mexeu no ficheiro e o site passou a dar erro 500? Diga-nos o domínio e a hora a que o fez, e ajudamos a repor.

Abrir um pedido de suporte

VEJA TAMBÉM

LiteSpeed Cache no WordPress: as primeiras definições

Regras de cache num site WordPress, sem esconder o painel

Erros de um site: 500, 403, 404, 508 e o que fazer

PRODUTO RECOMENDADO

Alojamento de sites com cPanel

Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde 5.940,00 Kz/mês (plano de 3 anos, com cupão)

Ver planos
  • 0 Utilizadores acharam útil
Esta resposta foi útil?