Otimizando o seu Joomla - Parte 2
Agora que já sabemos que devemos colocar o javascript no final da página, vamos aprender como servir o javascript pro browser comprimido.
Isso pode otimizar em até 70% o tempo de carregamento dos mesmos.
Pessoal isso é extramamente técnico, se você não tem se sente seguro pra fazer tais procedimentos, é melhor deixar do jeito que está, o seu site vai funcinar do mesmo jeito.
Existem diversas formas de resolver um mesmo problema, o que vou falar aqui, tomei como base o esse post.
Primeira coisa a fazer, baixar algum compressor de arquivos. Eu particularmente uso o 7-zip.
Comprimindo o arquivo .js
Se o arquivo se chamar mootools.js, após a compreensão ele vai se chamar mootools.js.gz e ambos devem ficar na mesma pasta.
Alterando o .htaccess
Insira a seguinte chamada no seu .htaccess
<FilesMatch "\\.js.gz$">
ForceType text/javascript
Header set Content-Encoding: gzip
</FilesMatch>
<FilesMatch "\\.js$">
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} !".*Safari.*"
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule (.*)\.js$ $1\.js.gz [L]
ForceType text/javascript
</FilesMatch>
Pronto feito, isso todos os arquivos .js que o browser for carregar ele primeiro vai procurar por .gz no final, caso ele não encontre ele utiliza o .js mesmo.
Aplicando a compressão no css
A mesma regra se aplica no css, comprima-o arquivo deixando-o com a extensão .gz
Adicione a regra no seu .htaccess
<FilesMatch "\style\.css\.gz$">
Header set X-Compression "gzip"
Header set Content-Encoding "gzip"
AddType text/css .gz
</FilesMatch>
<FilesMatch "\\.css$">
AddEncoding gzip .gz
RewriteCond %{HTTP:Accept-encoding} gzip
RewriteCond %{HTTP_USER_AGENT} !Safari
RewriteCond %{REQUEST_FILENAME}.gz -f
RewriteRule ^(.*)$ $1.gz [QSA,L]
</FilesMatch>
Pronto todos os css que browser encontrar, primeiro ele vai procurar o arquivo comprimido.
Considerações
Não esqueça de utilizar um compressor de css e javascript antes de comprimir o arquivo (que confuso né?)
Compressor de javascript: Dojo, Dean Packeer ou procure algum no google.
Compressor de CSS: CSSDrive, CleanCSS, CSS Compressor
Conclusão
Isso vai deixar seu site mais rápido do que um carro de fórmula 1??
Não MESMO!
Porém isso vai ajudar a deixá-lo cada vez mais rápido, quando você começa a perceber esses detalhes, significa que você se preocupa com o seu usuário.
-
fititnt escreveu em 14/04/2010 às 10:59:22
Muito bom o post. Certamente vou me lembrar que tem esse aqui quando quiser fazer algo 'no braço' direto via servidor. Eu algum tempo atrás já usei e testei vários compressoes, e, em geral quando não quero me encomodar muito, uso o CssJsCompress que faz esse serviço, porém via plugin Joomla. Além de fazer o indicado ele ainda junta os arquivos em um só, e tem certa compatibilidade de exclusão com javascripts que não aceitam serem comprimidos
-
gnumax escreveu em 15/04/2010 às 11:21:28
Gostei da serie de post para melhorar a carga do site em Joomla!, mais acho que você esquecio da importância que tem a otimização das imagens da pagina inicial como fator de carga. Tem aplicações online como http://tools.dynamicdrive.com/imageoptimizer/ que ajudam a mudar a qualidade e o tamanho das mesmas para que seu site fique ainda mas rápido. Parabéns pelas dicas.

