Menu
23 Octubre, 2011 Capitán SEO

Las reglas de .htaccess para conseguir un nombre de dominio único

Las reglas de .htaccess para conseguir un nombre de dominio único
Valora este post

El problema

Supongamos que tenemos un sitio web: www.ejemplo.es. Los usuarios pueden acceder a este a través de dos URLs: www.ejemplo.es y también ejemplo.es. ¿Qué problema genera esto en el ámbito del SEO? El problema es que, para los buscadores, es una duplicación de contenidos. Los usuarios acceden a la misma página, al mismo contenido, por dos URLs diferentes. Aunque a nosotros nos parezca que da lo mismo, para los buscadores no es así. Nuestro dominio interpreta las dos llamadas como si se tratara de páginas diferentes. Esto es motivo de penalización por los buscadores y el posicionamiento SEO de nuestra página sufrirá las consecuencias.

Tenemos que tener en cuenta que este factor es importante y que para solucionarlo hay que tener una URL única de acceso a nuestra página web. ¿Cúal es la mejor www.ejemplo.esejemplo.es? Los especialistas SEO dicen que hay que utilizar una de ellas: www.ejemplo.es o ejemplo.es (no las dos) como puerta de acceso a nuestra web. Lo importante es redirigir una URL a la otra y así ayudar a la optimización SEO para buscadores.

Hay que editar nuestro fichero .htaccess siguiendo unas reglas y así hacer un redireccionamiento 301 de ejemplo.es a www.ejemplo.es o viceversa.

La solución

1. Redirigir ejemplo.es a www.ejemplo.es:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.ejemplo\.es$ [NC] RewriteRule (.*) http://www.ejemplo.es/$1 [R=301, L]

RewriteCond  nos muestra: “Si el host solicitado NO es www.ejemplo.es…”

RewriteRule nos muestra: “…redirige la solicitud a www.ejemplo.es...”

De esta manera los usuarios entrarán a nuestra página web a través de una URL única.

2. Si queremos redirigir www.ejemplo.es a ejemplo.es:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^ejemplo\.es$ [NC] RewriteRule (.*) http://ejemplo.es/$1 [R=301, L]

Notas:

  • [NC]
    – Significa “no case sensitive”: no hay una preferencia para mayúsculas o minúsculas. RewriteRule, por defecto, es “case sensitive”.
  • !
    – Frente a una expresión regular significa NO. Esta regla se cumple sólo si la cadena de texto NO coincide con el patrón indicado en la expresión regular.
  • ^
    – Marca con qué patrón tiene que empezar la cadena de texto.
  • .
    – En una expresión regular significa cualquier carácter. Por eso, en RewriteCond hay que utilizar “\.” para indicar que se trata del carácter “.” y no de cualquier carácter.  Si utilizamos “\”  delante de un carácter, le deja sin significado especial (se escapa).
  • $
    – Marca con qué patrón tiene que finalizar la cadena de texto.
  • (.*)
    – Significa cualquier carácter cero o más veces. Esta cadena se guardará en la variable $1.
  • $1
    – Es la variable que contiene (.*)

Esperamos que este pequeño artículo os sirva de ayuda para mejorar el posicionamiento web de vuestras páginas y os hayamos aportado algo de claridad respecto de las URLs canónicas.

Autor: Alexandru Costache

Tweet about this on TwitterShare on Facebook0Share on Google+1Share on LinkedIn0Pin on Pinterest0

About the Author

Comments (6)

  1. Jenny Milagros

    Hola como estas quise hacer esto para resolver mi problema, pero no pude , en mi .htacces solo sale suPHP_ConfigPath /home/jmcmjfds
    coloque tu código claro modificando ejemplo.es por mi dominio y me salio internal error en mi página, alguna idea por favor!!! tengo el problema que al compartir en facebook un post de mi pagina no sale la foto solo el link y contenido pero sin foto, y al ir developers de facebook me salio que mi error contenido duplicado url , AYUDA!

    • capitanseo

      Hola Jenny,

      Gracias por tu comentario. ¿Cual es tu hosting?¿Tienen activado el mod_rewrite del servidor Apache? ¿Permite insertar reglas en un fichero .htaccess?¿Cual es la URL de tu página web?

  2. Jenny Milagros

    Hola Capitan SEO, gracias por responder, la verdad soy novata, uso wordpress , mi hosting es el arvixe, respecto a la preg si tiene el mod_rewrite activado, no lo se 🙁 , en el archivo de .htacces cuando lo abri solo sale esto “suPHP_ConfigPath /home/jmcmjfds” , la url es esta http://www.empilate.com
    Graciasss!

    • capitanseo

      Hola Jenny,

      Muy bonita tu página! Parece que el problema está solucionado. Si intentas acceder a la página
      a traveś de empilate.com te redirige a http://www.empilate.com, ya no hay 2 URLs para acceder a tu dominio.

      Saludos

  3. Jenny Milagros

    Hola Capitán SEO, aún sigue mi problema 🙁 que al compartir mi post en el facebook, aparece sin foto y cuando entro al deperurador del facebook developer o sea en esta pagina https://developers.facebook.com/tools/debug y coloco mi página para ver mi problema, me sale esto:

    Código de respuesta: 206
    Recuperados de la URL: http://www.empilate.com/
    URL canonica: http://www.empilate.com/?p=572

    Errores que se deben corregir

    Más de una OG se especificó una URL: Objeto en el ‘http://www.empilate.com/?p=572 “URL de« artículo »de tipo no es válido, ya que especifica múltiples’ og: url ‘= http://www.empilate.com/?p~~HEAD=NNS valores: 572, http://www.empilate.com/?p=572

    sigo con la url canónica 🙁 o no se cuál sea el problema.

    Le agradezco mucho su ayuda.

  4. capitanseo

    Hola Jenny. Esto último que nos comentas conlleva investigar qué ocurre y se encuentra fuera de la temática del post. Nosotros no tenemos tiempo ahora mismo para estas cosas. Afortunadamente, tenemos trabajo suficiente como para estar ocupados a full time y no nos podemos ocupar de estas labores.

    Lo sentimos y te deseamos que encuentres una solución.

    Saludos.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *