dominios y alojamiento web en hostalia

Cambio de URL redirección 301 con .htaccess

04 de diciembre de 2006
Valoración del artículo:
Explicamos la manera de realizar una redirección tipo 301 (moved permanently) de una URL antigua a una nueva, utilizando el fichero .htaccess.
Atención: Contenido exclusivo de DesarrolloWeb.com. No reproducir. Copyright.
A veces nos vemos en la necesidad de cambiar las direcciones de nuestras páginas, porque hayamos realizado una reestructuración del sitio, una reprogramación o un cambio de dominio. No cabe duda que esto siempre es un engorro, lo mejor sería conservar las direcciones antiguas, que las conocen nuestros usuarios y están correctamente posicionadas en buscadores, pero en ocasiones no tenemos más remedio.

En esos casos, lo más adecuado es facilitar tanto a usuarios como motores de búsqueda la localización de las nuevas URLs que sustituyen a las viejas. Existen varias maneras de hacer esto, unas más adecuadas que otras, pero parece ser que, de cara a buscadores como Google, lo más adecuado es realizar una redirección 301 "moved permanently". Así les estamos informando que los contenidos han cambiado de localización permanentemente, de modo que los motores de búsqueda actualizarán las direcciones en sus bases de datos. De cara a los usuarios, con una redirección 301 sus navegadores cambiarán las URL por las nuevas de manera transparente para los usuarios, es decir, sin que tengan que hacer nada.

En este artículo veremos cómo realizar una redirección 301 ayudándonos del archivo htaccess de Apache.

Referencia: Tenemos algunas informaciones sobre .htaccess en DesarrolloWeb.com.

Editar htaccess para crear direcciones amigables
http://www.desarrolloweb.com/manuales/htaccess-para-urls-amigables.html

Manual de Apache
http://www.desarrolloweb.com/manuales/41/

Realizar una redirección 301 con htaccess es muy simple. Se puede hacer con una línea como esta en el archivo:

redirect 301 /url_antigua.html http://www.dominio-nuevo.com/url-nueva/

Como se ha visto, se lanza un comando redirect, tipo 301 y luego se indican tanto la url antigua como la nueva. La antigua simplemente se indica con la URL relativa al archivo .htaccess. La nueva URL se indica de manera absoluta, comenzando con http://.

También podemos hacer redirecciones en masa más complejas utilizando patrones. Si los patrones concuerdan, entonces se realiza la redirección.

Por ejemplo, si queremos que cualquier URL de un dominio se redirija a la portada o página raíz de otro dominio, podremos hacer esto:

redirectMatch 301 ^(.*)$ http://www.desarrolloweb.com

Esto, en un dominio llamado por ejemplo domantiguio.com, redireccionaría cualquier URL como http://domantiguo.com/loquesea/ a la URL http://www.desarrolloweb.com. O bien una URL como http://domantiguo.com/dir/otracosa.html se redirigiría a http://www.desarrolloweb.com.

Ahora, si deseamos hacer una redirección de una URL de un dominio a la misma URL, pero en otro dominio, podríamos hacer algo como esto:

redirectMatch 301 ^(.*)$ http://www.desarrolloweb.com$1

Esto redirigiría algo como http://domantiguo.com/loquesea/ a la URL http://www.desarrolloweb.com/loquesea. Una URL como http://domantiguo.com/dir/otracosa.html la redirigiría a http://www.desarrolloweb.com/dir/otracosa.html.

Compartir en redes sociales

Comentarios
Fueron enviados 15 comentarios al artículo
15 comentarios revisados:
Por: Tomas
19/12/2006

Mucho cuidado con los redireccionamientos y Google ¡¡

Google considera una practica fraudulenta, hacer un redireccionamiento directo desde una antigua URL a una nueva. Yo lo hice con un antiguo dominio mio y me llegaro a yamar por telefono los de Google españa, amenazandome con quitarme del directorio (la nueva web por supuesto)

Esto tiene logica, ya que google siempre piensa en la persona que busca. Si colocas unas palabras claves en el buscador, google generara un resultado y si al entrar en ellos, nos redirijen hacia otra pagina. el buscador entiende que lo estas tratando de engañar o que otro dominio (el nuevo) esta rtando de apoderarse de las posiciones de otro.

Segun me dijeron del propio Google españa (en realidad era una empresa que trabaja para ellos rastreando posibles fraudes) la forma de proceder correctamente cuando queremos desviar una pagina de un dominio antiguo a uno nuevo, es colocar una pagina de aviso que el sitio ha cambiado de direccion y colocar un boton que nos lleve a esa nueva pagina y pedir al usuario que haga clic en este.

Tomas Cabrera
Por: Homero
23/1/2008
Es verdad lo que dice esta persona Tomas Cabrera?

a mi me suena a cuento...
Por: Roni
07/1/2009
Existe alguna manera de hacer una redireccion por htaccess pero por paginas distintas ?
Por ejemplo tengo los dominios www.a.com y www.b.com
pero los 2 caen en la misma carpeta .. hay alguna forma de por medio de htaccess redireccion a.com a un lado y b.com a otro ?
Gracias :)
Me fue de utilidad
Por: david
01/10/2009
soy el webmaster de exgoe.com y blogdewindows.com

ahora he usado la redireccion 301 en el sitio blogdewindows.com

redirectMatch 301 ^(.*)$ http://exgoe.com$1

solo como sugerencia te falto añadir que cualquiera de las maneras de usar redireccion 301 solo se hacen abriedo un bloc de notas y luego ponerle el tipo de redireccion que nos interesa en mi caso
redirectMatch 301 ^(.*)$ http://exgoe.com$1

y a final guardar el archivo con la extencion y nombre .htaccess

finalmente lo subi por via FTP al directorio raiz

de cualquier manera gracias me fue de mucha utilidad y agradecer no cuesta nada
Google no tiene problema con 301
Por: Rodrigo
02/10/2009
Lo de Tomas Cabrera es una basofia, o esta mintiendo o le tomaron el pelo. Si fuera así Google no publicaría esta artículo

http://www.google.com/support/webmasters/bin/answer.py?hl=en&answer=93633

Saludos
venga
Por: Chach
17/10/2009
asi que te lalmaron de google para comprobar tu redirección?
Mira, me pasó algo parecido.
A mi me llamo Bill Gates para que usara bien el bloc de notas. Ahora lo hago mucho mejor. Hala, que disfrutes con tus intervenciones en los foros. Te auguro un gran futuro como saxofonista (Tola)
Url canonica-varios dominios un solo alojamiento-url rewriting
Por: Karim Homsi
11/3/2010
Hola, yo tengo una pregunta para Miguel Angel Alvarez u otra persona que conozca bien la materia;
Tengo un hosting con un dominio principal (www.mi-sitio-principal.com) al cual tengo agregados dos otros (parked domains) por ejemplo: www.sitio-A.com y
www.sitio-B.com
En www.mi-sitio-principal.com tengo un archivo .htaccess con el sig. codigo para url canonica:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.mi-sitio-principal.com [NC]
RewriteRule (.*) http://www.mi-sitio-principal.com/$1 [QSA,R=301,L]

El problema que con este codigo mis otros dos dominios son automaticamente redireccionados a www.mi-sitio-principal.com
Mi pregunta:
Como puedo hacer para redireccionar mis otros dos dominios aparcados (parked) hacia las paginas, que yo deseo, de mi-sitio-principal.com, tomando en cuenta que no existen fisicamente en el repertorio (ya que son "aparcados" no tienen carpeta para colocarles a cada uno de ellos un archivo .htaccess que haga el redireccionamiento que necesito)?
Desde el "cPanel" de mi servidor puedo activar los redireccionamientos con un boton pero a condicion de antes suprimir el "htaccess" de mi-sitio-principal.com .
Esta ultima solucion, segun he leido, no es muy recomendada para los motores de busqueda; parece ser que lo ideal seria con un archivo .htaccess.
Le(s) agradezco mucho por su(s) respuesta(s) y consejos (espero haber sido suficientemente explicito) y tambien pido disculpas por la falta de acentos sobre algunas palabras, lo que pasa es que mi teclado no es español. Muchas Gracias.
Redireccion A Un Post
Por: Sebastian
12/7/2010
hola y como hago para redirigir la pagina en cuestión y un articulo
Excelente Articulo
Por: David De la Sota Pineda
28/8/2010
Después de algunos dias de busqueda me acorde de esta gran web que me saco de muchas dudas al inicio de mi carrera

Saludos
consulta sobre redireccion
Por: juan
28/9/2010
buscando informacion de seo, encontre que:

"Cuidado! Tu página sin los WWW funcciona en paralelo a la página con los WWW!

Tu sitio Web escrito http://ejemplo.com.ar y http://www.ejemplo.com.ar no apuntan a la misma URL. Es un problema clave que tienes que resolver con prioridad!

Los Redireccionamientos 301 son importantes para que Google? no vaya pensando que tus websites con y sin los WWW son diferentes.

La estructura de tus URLs es clave para la optimización de tu sito web. Lee en detalle este articulo y este otroque describen el tema, y asegúrate que tu desarrollador cumple con las normas."

Alguien sabe algo al respecto, y por otro lado... tiene la forma correcta de aplicar esto en un htaccess? porque lo aplique por php pero google eso parece que no lo ve de forma correcta.

Saludos
Sobre redireccion
Por: Edgar
16/4/2011
Hola Juan:

Lo que comentas es verdad, se denomina url canónica. Por ejemplo, las siguientes direcciones: www.tusitio.com, tusitio.com, tusitio.com/index.html, o www.tusitio.com/index.html a pesar de ser lo mismo pueden ser consideradas de forma distinta por el buscador y considerar que tienes 2, 3 o más páginas distintas con contenido duplicado, triplicado o multiplicado.

La solución es sencilla, puedes colocar lo siguiente en el archivo .htaccess:

Options +FollowSymLinks
RewriteEngine On

RewriteCond %{HTTP_HOST} !^www.tusitio.com
RewriteRule (.*) http://www.tusitio.com/$1 [R=301,L]

De esta forma, si alguien ingresa a tu sitio sin www automáticamente la url es reescrita con las www y no existe duplicación.

Sólo sustituye tusitio por el dominio correspondiente y si tu sitio no es .com pues pones .org, .net o cualquiera que sea la extensión.

Saludos.
Redirect en htaccess
Por: Quique Cardona
22/6/2011
Cambié los permalinks hace un tiempo y los redirigi correctamente a nivel interno.
Ahora necesitaria hacer un Redirect 301 a traves de .htaccess para no perder los enlaces antiguos que me vienen de fuera y no perder PR.

Lo se hacer individualmente pero me gustaria saber si existe una manera de que se aplique en todos los links.

Este es un ejemplo:

Redirect 301 /2005/10/everest-nepal.html http://www.viajablog.com/everest-nepal/

Todos los enlaces antiguos y nuevos siguen la misma logica:

viejo: http://www.viajablog.com/año/mes/titulo-del-post.html
nuevo: http://www.viajablog.com/titulo-del-post/

Se podria hacer de una sola tirada y que funcione en todos los links antiguos sin tener que hacerlo uno por uno?

Gracias

arisan
redireccion con el mismo puerto
01/8/2011
hola, estoy realizando unas pruebas con 2 servidores que tengo webserver y mail server en diferentes equipos e ip 192.168.1.4 y 198.120.1.5, ambos servidores escuchan en el puerto 80, puedo cambiar de puerto a uno de ellos pero no quisiera que los usuarios tengan que escribir midominio.com:8080 o mail.midominio.com:8081. si no que solo escriban la url y que el direccionamiento sea transparente.
Se puede solucinar esto con .htaccess?
desde ya muchas gracias
Google recomienda 301
10/10/2011
Google recomienda el 301 en sus herramientas para webmaster.

El 301 es facil de utilizar y nos da muchas facilidades.
La Redirección 301 no se penaliza en Google
09/1/2012
Dado que la Redirección 301 es un aviso de "Redirección Permanente", nunca será penalizada por los Buscadores.

Un Saludo ! !

Manuales relacionados
Categorias relacionadas
El autor
Lectura recomendada
Compra este libro en Agapea, la librería urgente a domicilio.
Últimas noticias
Donaciones
Si piensas que te hemos ayudado y merecemos tu apoyo económico...