O que é e para quê serve o arquivo .htaccess? (+ 10 códigos úteis para utilizar nele)

O .htaccess é um arquivo muito útil para o seu site. Saiba como explorar ao máximo suas funcionalidades (com códigos para copiar e colar).

  • 8 min de leitura
Foto de Lucas Tavares
arquivo htaccess

Se já se aventurou no universo de sites WordPress, é muito provável ter ouvido falar do arquivo .htaccess. Mas o que exatamente é esse arquivo, misterioso para muitos, e como ele pode impactar o seu site?

Para responder com exatidão essas dúvidas, explicaremos o que é o arquivo .htaccess e desvendaremos seus segredos, mostrando como esse pequeno arquivo pode abrir um mundo de possibilidades para seu site ou blog WordPress.

Com ele, você possui inúmeras novas funcionalidades, desde redirecionamentos estratégicos que melhoram a experiência do visitantes até configurações específicas de segurança que atuam como um escudo para seu site. 

Continue lendo para aprofundar seus conhecimentos e descobrir como o .htaccess pode elevar o seu site WordPress a um novo nível de excelência.

O que é o arquivo .htaccess?

O arquivo .htaccess é um arquivo de configuração utilizado em servidores web Apache desenvolvido para modificar, otimizar e controlar as ações tomadas pelo servidor para diretórios e seus conteúdos. 

De forma geral, ele fornece uma maneira simples (a depender do seu nível de conhecimento, claro) de personalizar as configurações do servidor sem a necessidade de acessar a configuração global. Em outras palavras, com o .htaccess é possível alterar o que o servidor faz, sem mexer diretamente nas configurações específicas dele. 

O que é o Apache?

No tópico acima, falamos que o .htaccess é um arquivo de configuração do Apache. Mas o que seria isso? 

O Apache é um servidor de código aberto. Seu nome oficial é “Apache HTTP Server”, mas praticamente ninguém o chama assim. Ele é mantido pela Apache Software Foundation. Estima-se que cerca de 46% de todos os sites na internet o utilizem. 

Ele é um dos servidores mais confiáveis, reconhecidos e antigos. Para se ter uma ideia, a sua primeira versão foi lançada em 95, fazendo com que ele possua quase 30 anos atualmente. Lembrando que a internet comercial existe desde 94. 

E o que tudo isso tem a ver com o arquivo .htaccess? Tem a ver que ele é um arquivo de configuração padrão do Apache.

O que pode ser feito com o .htaccess?

vantagens do htaccess

Muitas coisas! Dentre as principais funcionalidades, as mais conhecidas são:

  • Redirecionamentos: o .htaccess é utilizado para criar redirecionamentos de URLs, fazendo com que uma página x, leve o visitante até uma página y, por exemplo.
  • Reescrita de URLs: é possível utilizá-lo para reescrever URLs de forma mais amigável, auxiliando os usuários a encontrarem as páginas e garantindo pontos positivos em SEO.
  • Restrições de Acesso: o arquivo .htaccess controla o acesso a pastas e ficheiros específicos. Dessa forma, é possível proteger informações sigilosas com senhas ou até mesmo limitar o acesso de determinados endereços de IP.
  • Cache: o arquivo é comumente usado para habilitar a compactação das páginas e melhorar a performance do site.
  • Bloqueio de Bots rastreadores: assim como é possível bloquear acesso de endereços de IP, é possível impedir o excesso de bots.
  • Segurança: o .htaccess pode ser utilizado pensando em medidas de segurança, como negar o acesso direto a certos arquivos, páginas e recursos do servidor.

Claro, essas são apenas algumas possibilidades que o arquivo .htaccess oferece. Entretanto, isso não significa que seja necessário colocar todos esses itens em prática. Muitas vezes os plugins para WordPress já realizam essas alterações, te poupando de cometer algum erro ou mexer em configurações complexas.

Onde localizar o arquivo .htaccess?

O arquivo .htaccess se encontra na raiz da instalação do WordPress. Ou seja, na pasta principal da sua instalação. Normalmente, ela é denominada por “/www/public/” ou /public_html/”. Caso tenha dúvidas, ele está no mesmo diretório que os demais arquivos de configuração do CMS, como o wp-config.php.

Como editar o .htaccess?

Você pode editá-lo via cliente FTP, gerenciador de arquivos ou plugins como o Htaccess File Editor.

Recomendamos a última opção. O plugin cria backups automáticos e verifica por erros de sintaxe todas as vezes que houverem edições

Qual o .htaccess padrão do WordPress?

O arquivo .htaccess padrão é composto pelo código abaixo:

# BEGIN WordPress

RewriteEngine On

RewriteBase /

RewriteRule ^index.php$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.php [L]

# END WordPress

Por que o .htaccess do meu site WordPress difere do padrão?

Se o seu .htaccess se apresenta diferente do padrão do WordPress, é porque algum plugin o modificou para usufruir das funcionalidades e configurações dele, o que não há problema. Se suas páginas estiverem funcionando corretamente, sem nenhum erro aparente, apenas deixe como está.

Ter um .htaccess diferente não significa, necessariamente, que isso é errado ou que seu site apresentará erros no futuro. 

10 códigos úteis para o .htaccess

Abaixo, mostraremos uma lista completa com 10 códigos para utilizar no seu arquivo .htaccess. Lembre-se que qualquer código deve ser inserido após o “# END WordPress”. 

1. Ative a cache no servidor

O recurso de cache é responsável por otimizar o carregamento das suas páginas, fazendo com que a experiência do usuário seja a melhor possível. Entretanto, se já utiliza um plugin de cache, a recomendação é não utilizar o código abaixo.

<IfModule mod_expires.c>

ExpiresActive On

ExpiresByType image/jpg "access 1 year"

ExpiresByType text/css "access 1 month"

ExpiresByType application/pdf "access 1 month"

ExpiresByType image/gif "access 1 year"

ExpiresByType text/x-javascript "access 1 month"

ExpiresByType application/x-shockwave-flash "access 1 month"

ExpiresByType image/jpeg "access 1 year"

ExpiresByType image/png "access 1 year"

ExpiresByType image/x-icon "access 1 year"

ExpiresDefault "access 2 days"

</IfModule>

2. Proteja a pasta wp-content

A pasta wp-content é a que agrupa todos os conteúdos da sua instalação do WordPress (com exceção dos arquivos de instalação comuns da plataforma). Para evitar que arquivos sejam enviados a esse diretório, crie um novo arquivo .htaccess dentro do wp-content e utilize o código abaixo.

Order deny,allow

Deny from all

<Files ~ “.(xml|css|jpe?g|png|gif|js)$”>

Allow from all

</Files>

3. Deixe o wp-config.php mais seguro

O wp-config.php é o arquivo principal de configuração do WordPress. Nele estão contidas todas as informações sensíveis da instalação, como senhas e banco de dados. Para proteger ainda mais o arquivo, insira o código abaixo no seu arquivo.

<files wp-config.php>

order allow,deny

deny from all

</files>

4. Force o site a estar na codificação UTF-8

Muitas vezes, alguns sites apresentam erros de caracteres. Uma forma de resolver é optar pelo UTF-8, que pode ser feita via HTML ou pelo .htaccess, através do código abaixo.

<FilesMatch ".(htm|html|css|js)$">

AddDefaultCharset UTF-8

</FilesMatch>

5. Projeta seu site de endereços de IP específicos

Se notar que seu site está sofrendo um ataque de força bruta, basta bloquear os IPs correspondentes, uma vez que estejam identifiados, com o código abaixo.

allow from all

deny from 230.148.89.144

deny from 17.192.145.90

deny from 74.87.13.216

deny from 97.544.175.16

Atente que os IPs informados acima são exemplos. Será necessário alterar, conforme a sua necessidade.

6. Faça um redirecionamento 301

O código abaixo faz com que seu site (que contém o arquivo .htaccess) redirecione para outro de sua preferência. Caso não conheça esse tipo de redirecionamento (também conhecido por “301 Movido Permanentemente”), é um código de estado HTTP. Ele informa uma página ou recurso que foi permanentemente movido para uma nova localização.

Options +FollowSymLinks

RewriteEngine on

RewriteRule (.*) https://www.novosite.com/$1 [R=301,L]

Lembre de trocar o endereço acima “www.novosite.com” para o site que deseja.

7. Obrigue o site a ir de http para https

Se quiser que o seu site redirecione automaticamente de http para https, utilize o código abaixo. No entanto, é essencial estar instalado um certificado SSL. 

RewriteEngine On

RewriteCond %{HTTPS} !on

RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

8. Remova as extensões de arquivo da URL

Seu servidor provavelmente já faz isso por padrão. Mas caso deseje criar um site do zero, o código a seguir servirá para tornar o endereço mais amigável para os visitantes.

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME}\.html -f

RewriteRule ^(.*)$ $1.html

9. Proteja o próprio arquivo .htaccess

Para proteger o .htaccess, utilize o código abaixo.

<files ~ "^.*\.([Hh][Tt][Aa])">

order allow,deny

deny from all

satisfy all

</files>

O hotlinking, conhecido também por "inline linking" ou "leeching", ocorre quando uma pessoa utiliza os recursos (como imagens) hospedados em um servidor, em vez de hospedar esses arquivos no próprio server.

Para evitar que isso aconteça, utilize o código abaixo. Porém, lembre de trocar o “www.seusite.com” pelo endereço do seu site.

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$

RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?wwwseusite.com[NC]

RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]

Você precisa mesmo alterar o .htaccess?

Antes de finalizarmos o conteúdo, precisamos deixar esse aviso bem claro: não é necessário alterar o arquivo .htaccess. Faça apenas se houver uma real necessidade, uma vez que uma simples linha de código errado por deixar o seu site inseguro. 

Há como realizar backups do arquivo ou até mesmo enviar o .htaccess padrão do WordPress quando um erro desses acontecer, mas se há soluções em forma de plugins e outros recursos mais visuais, não é preciso mexer diretamente no arquivo, exceto se tiver curiosidade ou queira implementar algo bem específico.

Conclusão

Mostramos no artigo de hoje o que é o arquivo .htaccess, para quê serve e demos exemplos de vários códigos que podem ser úteis no seu site. Esperamos que todo o conteúdo tenha sido proveitoso. 

Qualquer dúvida, por favor, nos deixe saber na seção de comentários.

Obrigado por ler até aqui. Um forte abraço!