1. O Que E o .htaccess
O arquivo .htaccess (Hypertext Access) e um arquivo de configuracao de nivel de diretorio do servidor Apache. Ele permite sobrescrever configuracoes do servidor para um diretorio especifico e todos os seus subdiretorios, sem necessidade de acesso ao arquivo de configuracao principal (httpd.conf).
E amplamente usado em hospedagens compartilhadas, onde o usuario nao tem acesso root ao servidor, mas precisa configurar comportamentos como redirecionamentos, protecao de diretorios e otimizacoes de performance.
2. Redirecionamento HTTPS e WWW
Configurar HTTPS e essencial para SEO (Google penaliza sites sem HTTPS) e seguranca. A regra de redirecionamento usa o modulo mod_rewrite para redirecionar todo o trafego HTTP para HTTPS com status 301 (permanente).
- Sempre use redirecionamento 301 para preservar o SEO da URL original
- Escolha entre www e non-www e mantenha a consistencia em todo o site
- Combine HTTPS + non-www (ou www) em uma unica regra para evitar redirecionamentos encadeados
3. Performance com GZIP e Cache
A compressao GZIP pode reduzir o tamanho dos arquivos transferidos em 60-80%, acelerando o carregamento das paginas. O modulo mod_deflate do Apache comprime respostas de texto como HTML, CSS e JavaScript automaticamente.
"Habilitar GZIP e cache de arquivos estaticos pode melhorar o score do PageSpeed em 20-30 pontos em sites de conteudo tipico."
O cache de arquivos estaticos via mod_expires define por quanto tempo o navegador deve guardar imagens, CSS e JS localmente, reduzindo o numero de requisicoes ao servidor.
4. Headers de Seguranca
Headers HTTP de seguranca protegem contra ataques comuns sem alterar o conteudo da pagina. Os principais sao:
- X-Content-Type-Options: nosniff — previne que o browser interprete arquivos com tipo MIME incorreto
- X-Frame-Options: SAMEORIGIN — protege contra clickjacking impedindo que sua pagina seja carregada em iframes de outros dominios
- X-XSS-Protection — ativa o filtro XSS embutido em browsers mais antigos
5. mod_rewrite e SPA
O mod_rewrite e um dos modulos mais poderosos do Apache, permitindo reescrever URLs com expressoes regulares. Para Single Page Applications (React, Vue, Angular), o padrao mais comum e redirecionar todas as rotas para index.html, deixando o roteamento para o JavaScript do cliente.
6. Perguntas Frequentes
O .htaccess funciona com Nginx?
Nao. O .htaccess e exclusivo do servidor Apache. Para Nginx, use nossa ferramenta de Gerador de Configuracao Nginx.
Meu .htaccess nao esta funcionando, o que fazer?
Verifique se o Apache tem AllowOverride habilitado para o diretorio. Sem essa permissao, o .htaccess e ignorado. Em hospedagens compartilhadas geralmente ja esta habilitado. Tambem verifique se os modulos necessarios (mod_rewrite, mod_deflate, mod_expires) estao ativos.
O .htaccess afeta a performance do servidor?
Sim, levemente. O Apache le o .htaccess em cada requisicao para cada diretorio na hierarquia do arquivo solicitado. Em sites de alto trafego, prefira configurar diretamente no httpd.conf ou Virtual Host. Para sites menores e hospedagens compartilhadas, o impacto e negligivel.