A barra no fim, as maiúsculas e o index.html: a mesma página em vários endereços

SEO e Marketing·· 3 visualizações· 4 min de leitura

A resposta curta: para o navegador e para o Google, /contactos, /contactos/, /Contactos e /contactos/index.html são quatro endereços diferentes. No servidor podem abrir a mesma página, dar 404 ou redireccionar, conforme o caminho seja uma pasta real, um ficheiro real ou um endereço de uma aplicação como o WordPress. Se mais do que um responde 200, tem páginas duplicadas; se um dá 404, há uma ligação de alguém que está partida. O nome do domínio não distingue maiúsculas; o caminho, num servidor Linux, distingue.

As variantes, e o que costuma acontecer

Variante O que costuma acontecer O que quer
Pasta real sem barra: /galeria O servidor responde 301 para /galeria/ (o Apache e o LiteSpeed fazem-no nas pastas). Está bem. Nas suas ligações, use já a versão com barra e poupa um salto.
Página do WordPress com ou sem barra O WordPress redirecciona para a forma da sua estrutura de ligações permanentes. Está bem. As ligações internas na mesma forma.
Maiúsculas: /Contactos Num servidor Linux é outro ficheiro: dá 404, ou há duas cópias se ambos existirem. Minúsculas sempre. Redireccionar os endereços com maiúsculas que já andam por aí.
O ficheiro de entrada: /index.html, /index.php Abre a página inicial outra vez, num segundo endereço. 301 para / e nunca ligar ao index.html.
Barra dupla: /loja//sapatos Muitas vezes abre a mesma página. Corrigir o modelo ou o código que monta a ligação (um endereço base que acaba em «/» colado a um caminho que começa em «/»).
Domínio em maiúsculas: WWW.asuaempresa.ao É o mesmo endereço: o navegador passa o nome para minúsculas. Nada a fazer.

Escolher uma forma e fazê-la valer

1 Teste cada variante num terminal com curl -I https://asuaempresa.ao/contactos e o mesmo com a barra, com maiúsculas e com index.html. Duas variantes com 200 são duplicados; 301 para a forma certa está bem; 404 numa variante que alguém usa é uma ligação partida.
2 Escolha a forma que a sua plataforma já usa: no WordPress manda a estrutura das ligações permanentes; num site de ficheiros, as pastas levam barra e os ficheiros não. Não tente impor a forma contrária.
3 Use essa forma em todo o lado: menus, ligações internas, mapa do site e etiqueta canonical. Veja ligações internas e a etiqueta canonical.
4 Mande o index.html e o index.php para a pasta. Faça uma cópia do .htaccess e acrescente, por cima de outras regras de reescrita: RewriteEngine On
RewriteCond %{THE_REQUEST} ^(GET|HEAD)\s/+(.*/)?index\.(html|php)[\s?] [NC]
RewriteRule ^(.*/)?index\.(html|php)$ /$1 [R=301,L]
A condição sobre o pedido original evita que a regra entre em ciclo com o ficheiro de entrada que o próprio servidor serve. Teste numa janela privada.
5 Maiúsculas: passar tudo para minúsculas automaticamente precisa de configuração ao nível do servidor, que não se faz num .htaccess. Num plano partilhado, corrija as ligações e redireccione um a um os endereços com maiúsculas que já foram partilhados, com linhas como Redirect 301 /Contactos /contactos (este tipo de regra distingue maiúsculas).
6 Confira no Search Console os estados de páginas duplicadas e de redireccionamento: erros de rastreio no Search Console.
Não acrescente uma regra que põe ou tira a barra por cima do que o WordPress já faz. Duas regras que discordam (uma tira a barra, a outra põe) dão um ciclo infinito: ERR_TOO_MANY_REDIRECTS. E qualquer regra nova no .htaccess testa-se primeiro com 302, porque o navegador memoriza um 301 mal feito.
Nomes de ficheiros e pastas em minúsculas desde o primeiro dia evitam metade destes problemas. Quem traz um site de um servidor Windows, onde maiúsculas não contam, tem aqui a primeira surpresa: mudar um site entre Linux e Windows.

Não sabe que variante do endereço o seu site devia usar, ou a regra deu um ciclo? Envie-nos o domínio e duas variantes que se comportam de forma diferente.

Abrir pedido de suporte

VEJA TAMBÉM

A etiqueta canonical: páginas duplicadas, com ou sem www, e que endereço o Google guarda

Como deve ser o endereço de uma página, e como mudar um mau sem estragar nada

Redireccionamentos 301 quando muda uma página ou um domínio

ERR_TOO_MANY_REDIRECTS: quando o site se redireciona em círculo

Mudar um site entre servidores Linux e Windows: as diferenças que o partem

Ligações internas: como ligar as suas páginas para que nenhuma fique escondida

PRODUTO RECOMENDADO

Alojamento de sites com cPanel

Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde 5.940,00 Kz/mês (plano de 3 anos, com cupão)

Ver planos
Esta resposta foi útil? A sua resposta ajuda-nos a melhorar este artigo.