Canonização de URLs

Canonização? Que palavra mais estranha! Mas o que é isto?

Canonização é o processo de pegar a melhor URL quando se possui múltiplas escolhas, e geralmente indica a página inicial. Por exemplo, muitas pessoas podem considerar, as URLs abaixo, como iguais:

  • mestreseo.com.br
  • www.mestreseo.com.br
  • mestreseo.com.br/index.html
  • www.mestreseo.com.br/index.php

Mas tecnicamente todas estas urls são diferentes. Um determinado servidor por retornar conteúdos completamente diferentes para as urls citadas acima.

O problema que isto gera é a duplicação de conteúdo e a divisão do ranking (de cada buscador, por exemplo o PageRank do Google) entre suas páginas.

Imagine só… possuir 3 ou mais modos de acessar a index do seu site. Você com certeza está perdendo ranking e disperdiçando linkagem interna.

Para corrigir este problema, listo abaixo duas técnicas, a primeira é usando o .htaccess e a segunda organizando os links do site todo.

www vs no-www: Resolvendo o com .htaccess

O código abaixo faz com que toda requisição a mestreseo.com.br seja redirecionado permanentemente(301) para www.mestreseo.com.br :

RewriteCond %{HTTP_HOST} ^mestreseo\.com\.br [NC]
RewriteRule (.*) http://www.agenciamestre.com/$1 [R=301,L]

Prevenindo links errados

Verifique se o seu blog ou site utiliza corretamente os links, assegurando de que não haja links do tipo mestreseo.com.br/pagina.php e outro www.mestreseo.com.br/pagina.php

Receba Novidades

Insira seu email para receber novidades e dicas exclusivas da Agência Mestre!
Divulgue este artigo

42 Comentários para “Canonização de URLs”

  1. Alexandre Fugita

    Olá!

    Acabo de conhecer esse blog e posso dizer que já entrou no meu RSS! Parabéns! E como resolvi que vou ler todos os artigos (!), estou vindo aqui comentar no primeiro deles!

    Abraços!

    Responder
  2. Fábio Ricotta

    E aí Alexandre!

    Muito obrigado por visitar o site e principalmente por ficar ligado no nosso Feed =)

    Qualquer dúvida é só gritar, ou melhor, comentar =)

    []’s

    Responder
  3. Fill

    Ok, permitir o acesso ao site com ou sem o www não é bom. Mas o ideal é padronizar o acesso com www ou sem é melhor?

    Abraço

    Responder
  4. Adriele

    Olá, nao sou muito entendida do assunto, ainda sou principiante.
    onde eu coloco isso??
    RewriteCond %{HTTP_HOST} !^seodicas\.com\.br [NC]
    RewriteRule (.*) http://ww.seodicas.com.br/$1 [R=301,L]
    alguem pode me dar uma ajudinha.. please.. :D

    vlw pessoal.. o site é 1000!!

    Responder
  5. Splash

    O código correto é:
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^dominio\.com\.br.cc$ [NC]
    RewriteRule ^(.*)$ http://www.dominio.com.br/$1 [R=301,L]

    onde dominio.com.br deve ser alterado para o dominio do seu website.

    Responder
  6. Adriano

    Fábio, o contrario também é correto?
    redirecionar ‘www.mestreseo.com.br’ para ‘seodicas.com.br’ ?

    Responder
  7. Augusto Moura

    Pessoal, uma dúvida básica para iniciante. Onde colocar esse código? No cabeçalho do index?

    Abraços,
    Augusto Moura.

    Responder
  8. Fittipaldi

    Bom dia Fábio,
    Eu fiz o redirecionamento, mas a url permaneceu a mesma. Como saber se funcionou?
    Abraços.

    Responder
  9. fabianobrum

    Acho os artigos do site muito bons, mas acho que falta dar uma atençãozinha para os principiantes, afinal, duas pessoas já pergutaram onde colocar o código fornecido e não vi nenhuma resposta. Aliás, compartilho da dúvida! :-)

    Responder
  10. Junio

    Fabio…
    Como ficaria o codigo correto para:

    ‘www.mestreseo.com.br’ para ’seodicas.com.br’

    Tem como postar o codigo pra gente?
    Gostaria de usar o meu sem o “www”.
    Abração!

    Responder
  11. sergio

    Uma pergunta
    O uso da ferramenta do google para unificar urls é suficiente para resolver este problema?

    Responder
  12. Rui

    Ola pessoal estou com uma dúvida, ou melhor muitas dúvidas.
    Montei meu site com dois frames para cada página (frame L, Frame R), nas buscas do Google eles são encontrados em separado, ou seja, os frames são visualizados em separado nas buscas do Google. Se eu adicionar algo como:
    RewriteCond %{HTTP_HOST} ^mestreseo\.com\.br [NC]
    RewriteRule (.*) http://www.agenciamestre.com/$1 [R=301,L]
    conforme foi sugerido este tipo de problema será resolvido, e onde pelo amor de Deus eu coloco o código?
    Obrigado pela ajuda.

    Responder
  13. Daniel

    Fábio,

    Não sei o porquê, mas esse código não funcionou pra mim.

    Utilizei o código abaixo no .htaccess e aí sim funcionou:

    Options +FollowSymLinks
    Options +Indexes
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} ^dominio\.com\.br$
    RewriteRule ^(.*)$ http://www.dominio.com.br/$1 [R=301,L]

    Responder
  14. Ana Paula

    Olá Fabio,
    não me mate por te fazer uma pergunta sobre SEO.. é que to com uma duvida…
    Eu posso usar a tag canonical e o redirecionamento 301?
    por exemplo.. fui la na index e coloquei certinho a tag canonical, so que quando eu escrevo na barra de endereços.. continua funcionando de vaaarios jeitos. Entao eu preciso usar o redirecionamento 301? E se eu tiver que usar o redirecionamento eu tenho que apagar as tags canonicas?
    Desculpe a pergunta básica, mas é que fiquei com bastante dificuldade nisso tudo mesmo depois do curso.
    Obrigada,
    Ana

    Responder
  15. Lucas

    Boa, bem explicado! o meu problema é o seguinte, tenho um site que entra com www e sem-www. Isso eu posso resolver com esse código no .htacess, o problema é que tenho que redirecionar à um novo site. ou seja, meu site entra com www e sem-www e preciso canonizar ambas as páginas para um outro dominio.

    Responder
  16. Eduardo Cintra

    Alguém sabe como faz isso no wordpress? Usando a técnica do .htaccess?

    Responder

Deixar um comentário

  • (não será publicado)

XHTML: Você pode usar estas tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>