Redirecionamentos e Pesquisa Google

Redirecionar URLs é a prática de resolver um URL como outro, informando aos visitantes e à Pesquisa Google que uma página tem um novo local. Os redirecionamentos são especialmente úteis nas seguintes circunstâncias:

  • Você mudou seu site para um novo domínio e quer fazer a transição da forma mais direta possível.
  • As pessoas acessam seu site por vários URLs diferentes. Caso sua página inicial possa ser acessada de várias formas, como http://example.com/home, http://home.example.com ou http://www.example.com, convém escolher um desses URLs como seu destino preferido (canônico) e usar redirecionamentos para enviar o tráfego de outros URLs para ele.
  • Você está unindo dois sites e quer garantir que os links de URLs desatualizados sejam redirecionados para as páginas corretas.
  • Você removeu uma página e quer enviar usuários para uma nova página.

Visão geral dos tipos de redirecionamento

Embora os usuários geralmente não consigam distinguir entre os diferentes tipos de redirecionamentos, a Pesquisa Google os usa como um indicador forte ou fraco de que o destino do redirecionamento deve ser canônico. A escolha de um redirecionamento depende da duração esperada do redirecionamento e da página que você quer que apareça nos resultados da Pesquisa Google:

  • Redirecionamentos permanentes: mostram o novo destino de redirecionamento nos resultados da pesquisa.
  • Redirecionamentos temporários: mostram a página de origem nos resultados da pesquisa.

A tabela a seguir explica as várias maneiras de configurar redirecionamentos permanentes e temporários, ordenadas de acordo com a probabilidade de o Google interpretar corretamente. Por exemplo, um redirecionamento do lado do servidor tem mais chances de ser interpretado corretamente pelo Google. Escolha o tipo de redirecionamento que funciona para sua situação e site:

Tipos de redirecionamento
Permanente

O Googlebot segue o redirecionamento, e o pipeline de indexação o usa como um indicador forte de que o destino do redirecionamento deve ser canônico.

HTTP 301 (moved permanently)

Configurar redirecionamentos do lado do servidor.

HTTP 308 (moved permanently)
meta refresh (0 segundo)

Configurar redirecionamentos meta refresh.

Atualização HTTP (0 segundo)
location JavaScript

Configurar redirecionamentos JavaScript.

Redirecionamento Crypto

Saiba mais sobre redirecionamentos crypto.

Temporário

O Googlebot segue o redirecionamento, e o pipeline de indexação o usa como um indicador fraco de que o destino do redirecionamento deve ser canônico.

HTTP 302 (found)

Configurar redirecionamentos do lado do servidor.

HTTP 303 (see other)
HTTP 307 (temporary redirect)
meta refresh (>0 segundo)

Configurar redirecionamentos meta refresh.

HTTP refresh (>0 segundo)

Redirecionamentos do lado do servidor

A configuração de redirecionamentos do lado do servidor exige acesso aos arquivos de configuração do servidor (por exemplo, o arquivo .htaccess no Apache) ou a definição de cabeçalhos de redirecionamento com scripts do lado do servidor (por exemplo, PHP). É possível criar redirecionamentos permanentes e temporários no lado do servidor.

Redirecionamentos permanentes do lado do servidor

Se você precisar mudar o URL de uma página conforme ele é exibido nos resultados do mecanismo de pesquisa, recomendamos que use um redirecionamento permanente do lado do servidor sempre que possível. Essa é a melhor maneira de garantir que a Pesquisa Google e as pessoas sejam direcionadas para a página correta. Os códigos de status 301 e 308 significam que uma página foi permanentemente movida para um novo local.

Redirecionamentos temporários do lado do servidor

Se você quiser direcionar os usuários para outra página temporariamente, use um redirecionamento temporário. Dessa forma, o Google manterá o URL antigo nos resultados por mais tempo. Por exemplo, se um serviço oferecido no seu site estiver temporariamente indisponível, será possível configurar um redirecionamento temporário para direcionar os usuários a uma página que explica o que está acontecendo, sem comprometer o URL original nos resultados da pesquisa.

Implementar redirecionamentos do lado do servidor

A implementação de redirecionamentos do lado do servidor depende da hospedagem e do ambiente do servidor ou da linguagem de script do back-end do site.

Para configurar um redirecionamento permanente com PHP, use a função header(). É necessário definir os cabeçalhos antes de enviar qualquer elemento para a tela:

header('HTTP/1.1 301 Moved Permanently');
header('Location: http://www.example.com/newurl');
exit();

Veja um exemplo de como configurar um redirecionamento temporário com PHP:

header('HTTP/1.1 302 Found');
header('Location: http://www.example.com/newurl');
exit();

Se você tiver acesso aos arquivos de configuração do servidor da Web, você pode escrever as regras de redirecionamento por conta própria. Siga as orientações do seu servidor da Web:

  • Apache: consulte o Tutorial do Apache .htaccess, o Guia de regravação de URL do Apache e a documentação do Apache mod_alias. Por exemplo, é possível usar mod_alias para configurar redirecionamentos mais simples:

    # Permanent redirect:
    Redirect permanent "/old" "http://example.com/new"
    
    # Temporary redirect:
    Redirect temp "/two-old" "http://example.com/two-new"

    Para redirecionamentos mais complexos, use mod_rewrite. Exemplo:

    RewriteEngine on
    # redirect the service page to a new page with a permanent redirect
    RewriteRule   "^/service$"  "/about/service"  [R=301]
    
    # redirect the service page to a new page with a temporary redirect
    RewriteRule   "^/service$"  "/about/service"  [R]
  • NGINX: leia sobre a criação das regras de redirecionamento NGINX no blog do NGINX (página em inglês). Assim como no Apache, é possível criar redirecionamentos de várias formas. Por exemplo:

    location = /service {
      # for a permanent redirect
      return 301 $scheme://example.com/about/service
    
      # for a temporary redirect
      return 302 $scheme://example.com/about/service
    }

    Para redirecionamentos mais complexos, use a diretiva rewrite:

    location = /service {
      # for a permanent redirect
      rewrite service?name=$1 ^service/offline/([a-z]+)/?$ permanent;
    
      # for a temporary redirect
      rewrite service?name=$1 ^service/offline/([a-z]+)/?$ redirect;
    }
  • Para todos os outros servidores da Web, confira com o gerenciador do servidor ou hoster ou procure guias sobre seu mecanismo de pesquisa preferido (por exemplo: "redirecionamentos LiteSpeed").

meta refresh e o equivalente em HTTP

Se não for possível implementar redirecionamentos do lado do servidor na sua plataforma, os redirecionamentos meta refresh talvez sejam uma alternativa viável. O Google diferencia dois tipos de redirecionamentos meta refresh:

  • Redirecionamento meta refresh instantâneo: é acionado assim que a página é carregada em um navegador. A Pesquisa Google interpreta os redirecionamentos meta refresh instantâneos como permanentes.
  • Redirecionamento meta refresh atrasado: é acionado somente após um número arbitrário de segundos definido pelo proprietário do site. A Pesquisa Google interpreta redirecionamentos meta refresh atrasados como temporários.

Coloque os redirecionamentos meta refresh na seção de cabeçalho do HTML ou no cabeçalho HTTP com o código do lado do servidor. Por exemplo, veja um redirecionamento instantâneo meta refresh na seção de cabeçalho do HTML:

<!doctype html>
<html>
  <head>
  <meta http-equiv="refresh" content="0; url=https://example.com/newlocation" />
  <title>Example title</title>
  <!--...-->

Veja um exemplo do equivalente no cabeçalho HTTP, que pode ser injetado com scripts do lado do servidor:

HTTP/1.1 200 OK
Refresh: 0; url=http://www.example.com/newlocation
...

Para criar um redirecionamento atrasado, que é interpretado como temporário pelo Google, configure o atributo content com o número de segundos em que ele será atrasado:

<!doctype html>
<html>
  <head>
  <meta http-equiv="refresh" content="5; url=https://example.com/newlocation" />
  <title>Example title</title>
  <!--...-->

Redirecionamentos location JavaScript

A Pesquisa Google interpreta e executa JavaScript usando o serviço de renderização na Web depois que o rastreamento do URL é concluído.

Para configurar um redirecionamento JavaScript, defina a propriedade location como o URL de destino em um bloco de script no cabeçalho HTML. Exemplo:

<!doctype html>
<html>
  <head>
    <script>
      window.location.href('http://www.example.com/newlocation')
    </script>
    <title>Example title</title>
    <!--...-->

Redirecionamentos Crypto

Se não for possível implementar nenhum dos métodos de redirecionamento tradicionais, informe aos usuários que a página ou o conteúdo dela foi movido. A maneira mais simples de fazer isso é adicionar um link para a nova página acompanhado de uma breve explicação. Por exemplo:

<a href="https://newsite.example.com/newpage.html">We moved! Find the content on our new site!</a>

Isso ajuda os usuários a encontrar o novo site, e o Google pode entender isso como um redirecionamento crypto.

Versões alternativas de um URL

Quando você redireciona um URL, o Google rastreia a origem (o URL antigo) e o destino (o novo URL). Um dos URLs será definido como canônico, de acordo com alguns indicadores, como se o redirecionamento foi temporário ou permanente. O outro URL será um nome alternativo do URL canônico. Nomes alternativos podem aparecer nos resultados da pesquisa quando a consulta do usuário indica que ele pode confiar mais no URL antigo.

Por exemplo, se você mudar o site para um novo nome de domínio, é muito provável que o Google continue exibindo os URLs antigos nos resultados, mesmo que os novos URLs já estejam indexados. Isso é normal. À medida que os usuários se acostumarem com o novo nome de domínio, os nomes alternativos desaparecerão por conta própria.