Melhor guia .htaccess para SEO – com exemplos
Publicados: 2022-09-11
Depois de fazer algumas alterações em seu arquivo .htaccess, seu site pode ter ficado offline. Mas isso não é motivo de preocupação! Muitos SEOs caem nessa armadilha quando tentam ir além, fazendo correções técnicas.
Normalmente, editar o arquivo .htaccess por meio do painel do WordPress causa um ataque de pânico porque você fica bloqueado no painel depois de atualizar o arquivo .htaccess incorreto. Os arquivos .htaccess são uma bênção e uma maldição para os SEOs porque permitem que você altere as operações do seu site.
Se o seu site for executado no Apache Web Server, o .htaccess pode ajudá-lo com tudo, desde proteção por senha até redirecionamentos 301 e páginas de erro personalizadas.
Este é o recurso que você achava que não existia se você estiver procurando por uma solução rápida para colocar seu site online novamente após uma falha de atualização do .htaccess ou se quiser saber mais sobre como otimizar o .htaccess do seu site.
Passaremos por alguns ajustes e conselhos do quick.htaccess para que você, como SEO, possa fazer modificações em seu site com confiança, sem medo de consequências negativas.
Você já sabe o que é.htaccess e quão útil ele é para um webmaster usando o Apache Web Server. No entanto, para aqueles que são novos no .htaccess, vou falar sobre o básico para ajudá-los a compreendê-lo antes de implementá-lo.
O que é .htaccess?

.htaccess é um arquivo de configuração que o software Apache Web Server pode ler e executar para ativar ou desativar funcionalidades e recursos adicionais. Como o arquivo .htaccess é criado em um ambiente baseado em Unix e renderizado no nível do diretório, ele substitui as configurações globais do servidor da Web, permitindo uma configuração específica de acesso ao site.
O que significa .htaccess?
“Acesso de hipertexto” é abreviado como .htaccess. Depois que o arquivo se tornou popular entre os desenvolvedores que o usaram para ajustar as funções de acessibilidade do usuário por diretório, o apelido foi derivado.
As diretivas http.config do servidor Apache são usadas pelo .htaccess para habilitar e limitar o acesso a diretórios para usuários com nomes de usuário e senhas. Quando se trata de SEOs, no entanto, o .htaccess desempenha um papel ainda maior.
Para que é usado o .htaccess?
Considere o .htaccess uma vantagem se você tiver um site que tenha muitos critérios diferentes regularmente.
Como um SEO, você pode usar .htaccess para comandar o servidor da web para fazer redirecionamentos 301, ativar o cache, alterar cabeçalhos HTTP, controlar o rastreamento e tornar os URLs amigáveis para SEO, entre outras coisas.
Onde você pode encontrar o arquivo .htaccess?
Como .Htaccess é uma configuração em nível de diretório, você o encontrará em praticamente todas as pastas do seu diretório web. O arquivo .htaccess pode ser encontrado no diretório raiz, bem como dentro de cada subpasta se você tiver um único diretório web com vários subdiretórios (website).
Se você estiver usando o WordPress, a opção de plug-in Yoast é a melhor maneira de acessar o arquivo .htaccess.
Cuidado: Como o .htaccess não é algo que os iniciantes devam experimentar, recomendo fazê-lo primeiro no site de demonstração. Se você ficar bloqueado no administrador do WordPress, precisará saber como usar o Filezilla para entrar na pasta raiz.
Existem alguns plugins que permitem alterar o arquivo .htaccess se você tiver um site WordPress. Como a maioria dos usuários do WordPress usa o Yoast como seu plugin de SEO padrão, mostrarei como alterar o arquivo .htaccess de dentro do Yoast Dashboard.
Etapa 1: vá para o painel de administração do WordPress e faça login.
Passo 2: Vá para a página de configurações do Yoast.
Passo 3: Abra o menu Ferramentas.
Passo 4: Selecione “Editor de Arquivos” no menu de ferramentas.
Passo 5: Salve o arquivo .htaccess após editá-lo.
A configuração padrão de .htaccess na maioria dos sites WordPress é a seguinte:
# COMECE WordPress
Rewrite Engine On
RewriteBase /
Regra de reescrita ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}!-d
Regra de Reescrita. /index.php [L]
# FIM WordPress
E se o seu site não tiver um arquivo .htaccess?
Como o .htaccess é um arquivo de configuração criado automaticamente, ele estará presente em 99% das circunstâncias. No entanto, como normalmente é um arquivo oculto nos diretórios, os webmasters acreditam que ele desapareceu. Você poderá encontrá-lo se ativar “exibir arquivos ocultos”.
Se você ainda não conseguir encontrar o arquivo.htaccess depois de tudo isso, você terá que criar um manualmente e carregá-lo em seu servidor web.
Etapas para criar um arquivo .htaccess personalizado
Passo 1: Pegue um bloco de notas e comece a escrever.
Etapa 2: Anote a configuração (para testar, use a configuração padrão fornecida acima)
Passo 3: Salve o arquivo como.htaccess no formato ASCII.
Etapa 4: verifique se o arquivo não está salvo no formato .txt.
Passo 5: Carregue o arquivo.htaccess para o seu diretório web com o Filezilla.
Nota: Se você estiver usando o WordPress e o campo do arquivo.htaccess estiver vazio, basta adicionar a configuração e salvar.
O que fazer se você for bloqueado no painel do WordPress após atualizar o arquivo .htaccess?
Você pode ter sido bloqueado no painel após atualizar o arquivo.htaccess com o Yoast ou o WP File Manager. Não se preocupe. Este é um problema simples de resolver.
Se você é um SEO, solicite acesso FTP ao seu site do desenvolvedor ou administrador do servidor. Se você precisar de ajuda de um profissional, seu desenvolvedor pode ser a pessoa ideal para chamar.
Passo 1: Abra o FileZilla e faça login no seu diretório web.
Passo 2: Abra o diretório e baixe o arquivo.htaccess.
Passo 3: Substitua as configurações padrão no arquivo.htaccess e salve-o.
Passo 4: No diretório, substitua o arquivo old.htaccess pelo novo.
Use o código padrão se sua prioridade for colocar o site online novamente o mais rápido possível. Se você fez muitas alterações no arquivo.htaccess, procure o código que deu errado. Remova-o do arquivo antes de enviá-lo novamente para o servidor.
Por que você está vendo um erro após atualizar o arquivo .htaccess?
Se você é um SEO tentando aprender .htaccess desde o início, você cometerá alguns erros no início. Isso está correto até você descobrir por que o servidor da Web relatou um problema.
Quando se trata de alterar o arquivo .htaccess, existem alguns problemas frequentes que os SEOs enfrentam. Os problemas mais comuns de .htaccess estão listados abaixo.
- Substituição desabilitada: Você deve primeiro habilitar AllowOverride para que seu arquivo.htaccess funcione. Todas as personalizações definidas no.htaccess serão desabilitadas se a opção AllowOverride estiver definida como Nenhum. Para certificar-se de que a opção Substituir está ativada, faça o seguinte:
Etapa 1: Navegue até o arquivo de configuração do Apache e clique duas vezes nele (http.conf)
Etapa 2: Altere Allow OverRide para AllowOverride All na diretiva AllowOverride.
Etapa 3: Salve o arquivo de configuração do Apache e reinicie o Apache.
- Nome do arquivo com erros ortográficos : O segundo erro de SEO mais comum é o erro ortográfico do nome do arquivo. Misspelling.htaccess resultará em um erro porque é um arquivo de configuração baseado em Unix salvo em ASCII. O servidor Apache irá ignorar o arquivo e a configuração que você fornecer se o arquivo não começar com um “.” ou é carregado em um tipo de arquivo diferente, como.txt.
- A Hierarquia dos Arquivos .htaccess É Importante: A Hierarquia dos Arquivos .htaccess É Importante: A Hierarquia dos Arquivos .htaccess É Importante: A Hierarquia dos Arquivos .htaccess Algumas regras adicionadas ao início dos arquivos .htaccess podem substituir as regras adicionadas posteriormente na configuração. Se você acredita que isso é crucial, considere mover a configuração para o topo.
- Vários arquivos.htaccess: Como os arquivos.htaccess podem ser usados por diretório, seu site pode estar usando vários arquivos.htaccess. Em tais circunstâncias, a configuração de um arquivo pode entrar em conflito com a de outro, resultando em problemas. Arquivos individuais.htaccess podem ser desabilitados para solucionar isso.
- Erro de sintaxe: A funcionalidade do arquivo.htaccess é totalmente dependente da sintaxe usada para configurar seu site. Um problema de sintaxe de arquivo pode deixar seu site offline, causando um ataque de pânico. Como resultado, é fundamental entender a sintaxe antes de fazer alterações em seus arquivos.htaccess.
Quais são as mensagens de erro comuns que você recebe após atualizar o arquivo .htaccess?
Um usuário interage com o servidor da web direta ou indiretamente toda vez que visualiza seu site. O servidor da web busca os sites que eles veem quando os usuários clicam nas fotos e outros recursos que veem, portanto, você pode limitá-lo como webmaster.
.htaccess é um arquivo que alguns sites usam para definir a autenticação para acessar suas páginas. Quando se trata de SEOs, eles o empregam para garantir que os visitantes e os robôs dos mecanismos de pesquisa tenham acesso rápido às páginas mais importantes para eles. O servidor web gera um código de erro baseado nas configurações definidas no arquivo .htaccess caso o site não forneça as informações desejadas.
Aqui está a lista de códigos de erro que os servidores da Web exibem quando não conseguem buscar os dados solicitados.
Erros de solicitação do cliente
- 400 — Solicitação inválida: estrutura de URL inválida. O servidor não consegue entender a solicitação levantada pelo usuário.
- 401 — Autorização necessária: Essas mensagens são exibidas quando o acesso à página foi restringido pelos webmasters.
- 402 — Pagamento Obrigatório (ainda não usado): Se a iniciação do pagamento não acontecer, geralmente dá este código.
- 403 — Proibido – O simples motivo pelo qual você recebe um erro 403 é porque você está tentando acessar um recurso que tem permissão restrita. Um site exibe erros 403 proibidos quando os usuários tentam acessar uma página que requer autenticação.
- 404 — Not Found: 404 é uma indicação clara para os usuários de que a URL solicitada não está disponível no site. Pode ser devido a um erro de digitação na URL ou quando a página foi removida do site.
- 405 — Método não permitido: Este código de status de resposta HTTP indica que o servidor se recusou a aceitar o método de solicitação apesar de entender o propósito da solicitação.
- 406 — Não Aceitável (codificação): Isso geralmente acontece quando o servidor não pode responder com a solicitação de cabeçalho de aceitação.
- 407 — Autenticação Proxy Necessária: Este erro indica que a solicitação não pode ser atendida devido à falta de autenticação do servidor proxy entre o navegador e o servidor.
- 408 — Request Timed Out: Este é um dos erros HTTP comuns que os webmasters encontram quando o servidor não recebe uma solicitação completa do lado do cliente dentro do período de tempo limite alocado.
- 409 — Solicitação em conflito: Este erro ocorre quando o estado do recurso de destino entra em conflito com o estado atual. Para resolver o erro, identifique o conflito e reenvie.
- 410 — Desaparecido: Este código de erro representa que o acesso ao recurso solicitado foi removido permanentemente do servidor e assim permanecerá por toda parte.
- 411 — Content Length Required: O erro representa a incapacidade do servidor de aceitar a solicitação do cliente devido à falha na definição do cabeçalho content-length.
- 412 — Precondition Failed: É um erro causado devido ao conflito de segurança com uma ou várias das configurações de segurança que foram implementadas em seu servidor.
- 413 — Request Entity Too Long: Quando o recurso solicitado é muito grande para o servidor carregar, o usuário pode enfrentar o erro 413.
- 414 — URI de solicitação muito longo: pense em uma estrutura de URL acima de 2048 caracteres. O servidor não pode decifrar o erro 414 resultante.
- 415 — Tipo de mídia não suportado: Este erro aparece quando o servidor se recusa a carregar um recurso que está em um formato de mídia não suportado.
Erros do servidor
- 500 — Erro interno do servidor
- 501 - Não Implementado
- 502 Bad Gateway
- 503 serviço indisponível
- 504 — Tempo limite do gateway
- 505 — Versão HTTP não suportada.
Para que é usado o .htaccess?

Redirecionamentos
Você mudou recentemente o nome de domínio do seu site?

Como um SEO, você não quer que seus usuários vejam uma página 404 e certamente não quer que toda a sua autoridade suada evapore.
Considere seu arquivo .htaccess como uma solução para esses dois problemas. Você pode redirecionar seu tráfego e autoridade do site para o novo domínio adicionando a diretiva de redirecionamento ao seu arquivo .htaccess.
A parte interessante é que você pode fazer a mesma coisa com os URLs do seu site. Você pode forçar usuários e bots de mecanismos de pesquisa que estão tentando acessar uma URL antiga a visualizar uma nova página em seu site usando uma diretiva de redirecionamento 301.
Com .htaccess, aqui está um exemplo de redirecionamento em nível de domínio:
# Isso permite que você redirecione todo o seu site para qualquer outro domínio
Redirecionar 301 / http://example.com/
Usando .htaccess, aqui está um exemplo de redirecionamento de URL:
RedirectMatch 301 ^/old-url.html$ /new-url.html
URLs amigáveis para SEO
A estrutura de seus URLs está confusa? Os visitantes e os robôs dos mecanismos de pesquisa estão tendo problemas para decifrar o que está na página? Isso é algo que muitos webmasters enfrentam.
Depois que um site obtém autoridade, não prestar atenção à estrutura do URL se torna um grande problema.
Você pode definir o formato de URL correto para seu site usando .htacces.
Além disso, qualquer extensão que venha com sua URL, como.html ou.php, pode ser simplesmente eliminada adicionando diretivas ao arquivo .htaccess.
Exemplo 1: usando .htaccess para remover extensões no URL
Removendo .php como extensão
RewriteEngine ligado
RewriteCond %{REQUEST_FILENAME}!-d
RewriteCond %{REQUEST_FILENAME}.php -f
Regra de regravação ^(.*)$ $1.php [NC,L]
Removendo .html como extensão
RewriteEngine ligado
RewriteCond %{REQUEST_FILENAME}!-d
RewriteCond %{REQUEST_FILENAME}.html -f
Regra de regravação ^(.*)$ $1.html [NC,L]
Exemplo 2: usando .htaccess para fazer URLs em letras minúsculas
Método 1
Reescrever Cond %{REQUEST_URI} [AZ]
Regra de Reescrita. ${lc:%{REQUEST_URI}} [R=301,L]
Todas as estruturas de URL, incluindo o nome de domínio, serão afetadas pelo código acima mencionado.
Método 2
Reescrever Cond %{REQUEST_URI} [AZ]
Regra de regravação ^.+.html$ ${lc:%{REQUEST_URI}} [NC,R=301,L]
Apenas os nomes dos arquivos html serão afetados pelo anterior.
Exemplo 2: usando .htaccess para regravação de URL dinâmica
Rewrite Engine On
RewriteRule /(.*)/(.*)/$ page.php?category=$1&product=$2
URL incorreto: site.com/page.php?category=2&product=54
Bom URL: site.com/sandwiches/rueben-sandwich/
- Usando .htaccess para melhorar a velocidade do site
A nova palavra da moda entre os webmasters é a velocidade da página.
Eles têm todos os motivos para causar confusão, já que o Google agora o considera um dos elementos mais importantes na classificação de páginas no SERP.
O Google não quer que os usuários tenham uma experiência negativa ao visitar as páginas mais bem classificadas.
Um site de carregamento lento também desperdiça muito do orçamento de rastreamento.
Configurar seu arquivo .htaccess é uma das maneiras mais simples e seguras de aumentar a velocidade do seu site.
- Ativando o recurso de cache
Ao habilitar o recurso de cache no arquivo .htaccess, os recursos do site são salvos no navegador do visitante, permitindo um carregamento mais rápido.
Você pode habilitar o cache usando dois métodos diferentes
ExperiesByType — Você pode especificar uma janela de tempo de cache, também conhecida como expiração, para cada recurso em seu site usando este método in.htaccess.
Exemplo:
<ifModule mod_headers.c>
# ANO
<FilesMatch ".(ico|gif|jpg|jpeg|png|flv|pdf)$">
Conjunto de cabeçalho Cache-Control "max-age=29030400"
</FilesMatch>
# SEMANA
<FilesMatch ".(js|css|swf)$">
Conjunto de cabeçalho Cache-Control "max-age=604800"
</FilesMatch>
# 45 MIN
<FilesMatch ".(html|htm|txt)$">
Conjunto de cabeçalho Cache-Control "max-age=2700"
</FilesMatch>
</ifModule>
Cabeçalho de controle de cache — O cabeçalho de controle de cache usa a idade máxima do recurso antes da expiração.
Exemplo:
# Um mês para a maioria dos ativos estáticos
<filesMatch ".(css|jpg|jpeg|png|gif|js|ico)$">
Conjunto de cabeçalho Cache-Control "max-age=2628000, public"
</filesMatch>
Ativando a compactação Gzip
O tamanho dos recursos de um site é o único fator que o torna mais lento. Você pode diminuir o tamanho da imagem, o tamanho do arquivo e o número do arquivo enquanto transmite dados para o navegador do lado do cliente ativando o gzip em seu arquivo .htaccess.
Uma das diretivas .htaccess mais simples é habilitar a compactação gzip.
Aqui está uma ilustração:
<ifModule mod_gzip.c>
mod_gzip_on Sim
mod_gzip_dechunk Sim
arquivo mod_gzip_item_include .(html?|txt|css|js|php|pl)$
manipulador mod_gzip_item_include ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>
Ativando a opção de esvaziamento
Como alguns servidores da web não suportam gzip, o site pode encontrar dificuldades. Nesses casos, a opção deflate no arquivo .htaccess é recomendada.
Aqui está uma ilustração:
<IfModule mod_deflate.c>
# Comprimir texto, HTML, JavaScript, CSS, XML
AddOutputFilterByType DEFLATE aplicativo/javascript
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/x-font
AddOutputFilterByType DEFLATE application/x-font-opentype
AddOutputFilterByType DEFLATE application/x-font-otf
AddOutputFilterByType DEFLATE application/x-font-truetype
AddOutputFilterByType DEFLATE application/x-font-ttf
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE fonte/otf
AddOutputFilterByType DEFLATE fonte/ttf
AddOutputFilterByType DEFLATE imagem/svg+xml
AddOutputFilterByType DEFLATE imagem/ícone x
AddOutputFilterByType DEFLATE texto/css
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE texto/simples
AddOutputFilterByType DEFLATE text/xml
# As linhas a seguir são para evitar bugs com alguns navegadores
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4.0[678] sem gzip
BrowserMatch bMSIE !no-gzip !gzip-only-text/html
BrowserMatch bMSI[E] !no-gzip !gzip-only-text/html
# Não armazene em cache se esses arquivos já estiverem armazenados em cache
SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip
# Os proxies devem fornecer o conteúdo certo
# Header append Vary User-Agent env=!dont-vary
Anexo de cabeçalho Variar User-Agent
</IfModule>
Usando .htaccess para rastreamento e indexação aprimorados
Você já pode estar utilizando o arquivo robot.txt para controlar se os mecanismos de pesquisa podem rastrear e indexar seu site. No entanto, é possível que seu site contenha outros recursos além de uma página da web. O rbot.txt pode não funcionar nesses casos.
Configurar um X-robots-tag em seu arquivo .htaccess é a técnica ideal para tornar alguns recursos, como um PFD ou um documento do Word, não indexados.
O cabeçalho personalizado do arquivo .htaccess é compatível com todas as diretivas do indexador.
Exemplo:
<FilesMatch ".(docx|pdf)$">
Header add X-robots-tag "noindex, noarchive, nosnippet"
</FilesMatch>
Qualquer arquivo com as extensões.doc e.pdf será considerado noindex, noarchive e nosnippet nesta situação.
Quase todo servidor Apache vem com um arquivo de configuração pré-configurado. No entanto, como isso se aplica a todo o site, é difícil definir a personalização no nível do diretório.
É aqui que o .htaccess é útil. O arquivo .htaccess pode ser usado para substituir as configurações do Apache no nível de diretório e subpasta.
Além disso, você pode definir a autenticação usando códigos de configuração simples. Isso é especialmente benéfico se você tiver muitos sites em uma conta de hospedagem compartilhada.
Vantagens do arquivo .htaccess
- Todos os pedidos são lidos por ele.
- Sem ter que reiniciar o servidor, uma modificação pode ser feita imediatamente.
- Gerencie o acesso do usuário de forma eficaz com base em suas preferências
- Define a configuração no nível do diretório.
- Para SEOs, este é um grande benefício.
Desvantagens do arquivo .htaccess
- O uso de arquivos .htaccess pode aumentar as preocupações de segurança associadas à hospedagem de um site.
- Como o arquivo.htaccess é verificado e lido sempre que uma página é carregada, ele é mais lento do que a configuração do lado do servidor.
- Isso afeta a velocidade de um site que recebe milhões de visitantes.
Devido a questões de segurança e desempenho, os arquivos .htaccess não são recomendados como meio de configuração do servidor.