0 Compartilhamentos 1033 Views 2 Comments

Usando o poder do cache do navegador com .htaccess

A primeira vez em que um visitante entra na sua página, o navegador irá puxar as imagens, o Javascript, o arquivo de CSS, os documentos de Flash, o Favicon, a pia da cozinha e mais além do código HTML. Na segunda vez também. E na terceira. E cada um destes arquivos paralelos é uma requisição HTTP e seu servidor precisa se virar para entregar tudo em tempo hábil. O resultado? A performance sofre, o usuário reclama que o site está lento, o robô do Google classifica a página como “pesada” e seu ranking na busca sai prejudicado.

Como resolver? Com expire headers, ou datas de expiração.

Usando esse truque simples no seu arquivo .htaccess, o servidor saberá quanto deve entregar uma nova versão de um determinado arquivo e quando deverá orientar o navegador a puxar do seu próprio cache. Sim, porque, a menos que o usuário limpe seus arquivos temporários, os navegadores tem uma tendência de ir salvando tudo que visitam. Se o servidor avisar, o navegador usa a versão que já tem das imagens, documentos Javascript, arquivos CSS, Favicon e até da pia da cozinha. Alguns destes elementos podem ficar anos sem serem alterados!

Antes de mais nada, você precisa habilitar as datas de expiração em seu servidor (se ainda não estiver habilitado) através do documento .htacess. É mais simples do que parece:

Uma vez que seu documento .htaccess nada mais é do que texto, basta adicionar as seguintes linhas de código para cada tipo de arquivo:

ExpiresByType image/x-icon "access plus 1 year"

A linha acima irá detectar todos as chamadas para arquivos do tipo ícone, como Favicons, por exemplo, e declarar que eles irão durar por um ano após o primeiro acesso. Este período pode ser meio arriscado, se você está planejando um novo layout, mas é possível usar valores menores para a data de expiração.

Para adicionar uma data de validade para seus arquivos de imagens:

ExpiresByType image/gif "access plus 1 month"
ExpiresByType image/png "access plus 1 month"
ExpiresByType image/jpg "access plus 1 month"
ExpiresByType image/jpeg "access plus 1 month"

Para arquivos de CSS e Javascript, você pode utilizar o mesmo prazo ou uma semana, se as alterações forem mais frequentes:

ExpiresByType text/css "access plus 1 month"
ExpiresByType application/javascript "access plus 1 week"

Atenção: se você especificar uma data de expiração no futuro e precisar alterar um destes arquivos, então terá que alterar o nome do arquivo para que o navegador entenda que ele é novo ou vai continuar vendo o arquivo armazenado no cache e tentando entender o que foi que deu errado. É um efeito colateral do ganho de performance, então, cuidado com seus expire headers!

Carregando...

Você pode se interessar

Por que eu decidi não migrar para o Windows 11 agora
Artigos
113 visualizações
Artigos
113 visualizações

Por que eu decidi não migrar para o Windows 11 agora

Carlos L. A. da Silva - 19 de outubro de 2021

O novo sistema operacional da Microsoft está entre nós, mas talvez não seja uma boa ideia pular de cabeça.

Enumerando e analisando mais de 40 implementações de JavaScript (que não são V8)
Artigos
241 visualizações
Artigos
241 visualizações

Enumerando e analisando mais de 40 implementações de JavaScript (que não são V8)

Carlos L. A. da Silva - 6 de outubro de 2021

V8 é o interpretador JavaScript, também chamado de máquina virtual Javascript, desenvolvido pela Google e utilizado em seu navegador Google Chrome. Com o peso de seus criadores e a quase onipresença do navegador, foi apenas uma questão de tempo para essa implementação do JavaScritp se tornar dominante no mercado. Entretanto, um bom desenvolvedor sabe que […]

Sir Clive Sinclair, o homem adiantado no tempo
Artigos
424 visualizações
Artigos
424 visualizações

Sir Clive Sinclair, o homem adiantado no tempo

Carlos L. A. da Silva - 18 de setembro de 2021

O inglês Clive Marles Sinclair nasceu de uma família de engenheiros. Seu avô foi engenheiro, assim como o seu pai. Com um talento natural pela Matemática e um forte interesse em eletrônica, ele se tornaria uma página importante da popularização da computação em diversas partes do mundo, construindo um legado que se perpetuará por anos […]

2 Responses

  1. Olá,

    Bom dia… Tudo bom?
    Este é meu Site : http://www.emportec.com.br

    Estou tentando atribuir este código em meu arquivo ” .htaccess ” para melhorar a performance do mesmo, principalmente na 1 vez que carrega inicialmente , mas não sinto uma diferença quando faço determinados testes de carregamento e tudo mais… Pode me auxiliar, por gentileza se estou fazendo da maneira correta ou o que tenho que fazer para ativá-lo?
    Abaixo o meu código atual em meu arquivo na minha hospedagem ”HostGator”.

    Muito Obrigado.

    # BEGIN LSCACHE
    # END LSCACHE
    # BEGIN NON_LSCACHE
    # END NON_LSCACHE
    AddHandler application/x-httpd-php71 .php

    suPHP_ConfigPath /home/emportec/php.ini

    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    # END WordPress

    Resposta

Deixe uma Resposta para ozeias Cancelar resposta

Your email address will not be published.

Mais publicações

A cibersegurança por trás das vacinas
Artigos
524 visualizações
524 visualizações

A cibersegurança por trás das vacinas

Carlos L. A. da Silva - 7 de setembro de 2021
Top 25 comandos do Git
Artigos
665 visualizações
665 visualizações

Top 25 comandos do Git

Carlos L. A. da Silva - 28 de agosto de 2021
Dez anos de Kotlin: origens e futuro
Artigos
719 visualizações
719 visualizações

Dez anos de Kotlin: origens e futuro

Carlos L. A. da Silva - 20 de agosto de 2021