Como hacer una redireccion 301 desde el .htaccess

Fecha: 05/03/2015
Existen cientos y miles de artículos en blogs publicados por Internet en los que explican cómo realizar una redirección 301 mediante el .htaccess, aunque en muy pocos casos explican en qué casos realizar cada tipo de redirección 301.
Normalmente las redirecciones son temas “complicados”, sobre todo cuando hablamos de redirecciones 301 aplicadas al SEO, ya que un parámetro mal puesto en el .htaccess puede provocar una penalización por contenido duplicado o un problema bastante difícil de solucionar si no estamos acostumbrados a la sintaxis del .htaccess.

Índice del artículo
  • REDIRECCION 301 PARA CAMBIOS DE DOMINIO
  • REDIRECCION 301 DE TODO EL TRÁFICO A LA HOME
  • REDIRECCION 301 DE UNA URL A UN DOMINIO NUEVO
  • REDIRIGIR DOMINIO SIN ‘WWW’
  • REDIRIGIR DOMINIO CON ‘WWW’


Como hacer una redireccion 301

Vamos a explicar tres redirecciones 301 en .htaccess para tres casos completamente diferentes, debes usar uno u otro dependiendo de las circunstancias.

REDIRECCION 301 PARA CAMBIOS DE DOMINIO


En el caso de un cambio de dominio normalmente queremos mantener la estructura de enlaces después de la redirección, es decir, que se mantengan las URL: si el visitante entra por dominiodejemploantiguo.es/blog/como-crear-un-blog lo lleve mediante un 301 a dominiodejemplonuevo.es/blog/como-crear-un-blog.
redirectMatch 301 ^(.*)$ http://dominiodeejemplo.com$1

Esta sintaxis crea una redirección perfecta para utilizar en cambios de dominio donde interesa conservar la estructura de enlaces.

REDIRECCION 301 DE TODO EL TRÁFICO A LA HOME


Si quieres redireccionar todo el tráfico que entra al dominio a la raíz o página inicial de otro dominio tienes que usar una línea parecida a la del caso anterior, pero sin el comodín al final:
redirectMatch 301 ^(.*)$

Esta redirección se suele utilizar en temas de SEO cuando se quiere transferir toda la fuerza de un dominio a la página principal de otro dominio, esta es una redirección que debe realizarse con cuidado, ya que si se hace mal puede tener efectos adversos en el SEO.

REDIRECCION 301 DE UNA URL A UN DOMINIO NUEVO


Este caso suele ser el menos utilizado, ya que es bastante concreto y en pocas ocasiones se suele utilizar, se trata de redireccionar una URL dentro del sitio web actual a otro dominio usando la sintaxis del archivo .htaccess.
redirect 301 /blog/

Personalmente hemos usado esta redirección cuando queremos separar un blog integrado en la URL principal a un subdominio o a otro dominio completamente diferente.

REDIRIGIR DOMINIO SIN ‘WWW’


RewriteEngine On
RewriteCond %{HTTP_HOST} !^mi-dominio\.com$ [NC]
RewriteRule ^(.*)$ [R=301,L]

REDIRIGIR DOMINIO CON ‘WWW’


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

Alvaro Fontela es consultor WordPress especializado en WPO y rendimiento web, además de co-fundador y CEO de Raiola Networks.

Artículos relacionados

Si te ha gustado este post, aquí tienes otros que pueden ser de tu interés. ¡No dejes de aprender!

Tenemos 81 comentarios en Como hacer una redireccion 301 desde el .htaccess

Deja una respuesta

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

Avatar del autor del comentario

Mamá Tijeras

21/03/2015 a las 19:11

Hola Álvaro un buen post para explicarlo porque es tema complicado y no se encuentran muchas entradas que hablen de ello. Gracias.

Responder
Avatar del autor del comentario

María Villar

20/01/2016 a las 16:16

Hola Álvaro, cómo podría hacerte una consulta? Gracias!

Responder
Avatar del autor del comentario

Alvaro Fontela

21/01/2016 a las 19:33

Hola Maria, puedes enviarme la consulta a info@raiolanetworks.es

Un saludo.

Responder
Avatar del autor del comentario

androidxphone

21/01/2017 a las 18:08

Fuera interesante un tutorial vuestro para redireccionar de http a https, hay mucha info en la red pero cada quien habla una cosa diferente y es un auténtico mareo. Ojalá los pudierais hacer vosotros.

Responder
Avatar del autor del comentario

Alvaro Fontela

25/01/2017 a las 01:41
Tenemos algo similar en el articulo de Let´s Encrypt para Wordpress, tal vez te pueda ayudar: enlace
Responder
Avatar del autor del comentario

Alvaro Fontela

06/06/2017 a las 18:23

Hola Cristofer, si aun no lo has solucionado, ¿puedes mandarme a alvaro@raiolanetworks.es un correo con lo que tienes en el .htaccess?

Un saludo.

Responder
Avatar del autor del comentario

ideaweb Diseño Web Madrid

06/10/2017 a las 14:39

Buena recopilación Álvaro. Había mucho caos con esto y lo has ordenado perfecto. Nos lo quedamos como Cheat Sheet del 301 para nuestras páginas web.

Responder
Avatar del autor del comentario

Alvaro Fontela

09/10/2017 a las 15:33

Muchas gracias.

Me alegro de que os sirviera.

Un saludo.

Responder
Avatar del autor del comentario

Nico Rodger

18/10/2017 a las 17:40

Hola Alvaro. Perdón por escribir aquí pero tengo una duda y me gustaría que me ayudes. La primera es si hay que escribir en el htaccess del dominio viejo, verdad? Yo quiero hacer un cambio de dominio completo así que usaré esta según tu ejemplo:

redirectMatch 301 ^(.*)$ http://dominiodeejemplo.com$1
Ahí debo poner el dominio nuevo, cierto? también van el $1 del final?
Saludos y gracias

Responder
Avatar del autor del comentario

Alvaro Fontela

23/10/2017 a las 12:36

Efectivamente, debes poner eso con el $1 al final.

Un saludo.

Responder
Avatar del autor del comentario

David Q

09/07/2020 a las 19:19
Segun tu ejemplo creo asi queda, que tengo la misma duda

si el visitante entra por dominiodejemploantiguo.es/blog/como-crear-un-blog lo lleve mediante un 301 a dominiodejemplonuevo.es/blog/como-crear-un-blog.


redirectMatch 301 ^(.*)$ http://dominiodeejemplonuevo.com$1
Responder
Avatar del autor del comentario

Alvaro Fontela

12/07/2020 a las 21:24
Hola David, si, quedaría así. Lo único, comprueba que todos los símbolos están bien escritos y que la URL concuerda incluso en el HTTP o HTTPS.
Responder
Avatar del autor del comentario

José Fritzler

19/10/2017 a las 07:22

Hola compañero, una consulta sobre las redirecciones 301. Una vez que genero una redirección, tengo entendido que la fuerza de posicionamiento dura unos 3 meses para que se haga efectiva. Después de ese tiempo, se puede borrar la redirección o se debe dejar permanentemente escrita?, ya que en mi caso tengo un plugin que hace eso y tengo como 100 urls y si sigo acumulando más, aparentemente se pierde link juice y relevancia en los buscadores, ¿Puede que sea así, o al cabo de un tiempo se puede borrar? Un saludo y buen post!

Responder
Avatar del autor del comentario

Alvaro Fontela

23/10/2017 a las 12:35

Pues depende de si siguen llegando enlaces a la URL anterior o no, ahí esta la cuestión...

Responder
Avatar del autor del comentario

José Fritzler

28/10/2017 a las 07:07

Eh compañero, buen dato pero me cuesta entender, me dices que los enlaces deben seguir llegando desde la url vieja segun entiendo, pero como se mide eso? Hay un programa? Un saludo!

Responder
Avatar del autor del comentario

Oscar

03/11/2017 a las 12:32

Buenos días
¿Si queremos hacer varias redirecciones ponemos cada comando por separado o podemos condensarlos en una solo linea?

En mi caso quiero quitar las www y además ya tengo una redirección para quitar la fecha de las URL.

Por cierto
¿dónde es mejor poner estos fragmentos en el archivo .htaccess? Al principio? al final?

Gracias

Responder
Avatar del autor del comentario

Héctor Luaces

05/04/2018 a las 22:00

Hola, Óscar.

Nada te impide "condensar", como dices, pero ten cuidado porque la sintáxis puede cambiar. Dime exactamente qué quieres hacer y te pongo un ejemplo.

Respecto a los fragmentos: da igual si es al principio o al final, pero nota que el archivo se va a leer de arriba a abajo. Si se encuentra una redirección al principio, ésta se aplica y puede hacer que las de abajo no se ejecuten. Por eso ten siempre presente el orden en el que las pones.

Un saludo.

Responder
Avatar del autor del comentario

Marcelo Astorga

22/07/2018 a las 22:28

Hola Álvaro, felicidades por ser el 1º en la busqueda de 301 :). Leyendo el post, me falta un tipo de redirección que es la que buscaba. Como rediriges de una url a otra url del mismo dominio?.

Responder
Avatar del autor del comentario

Héctor Luaces

23/07/2018 a las 08:29

Hola, Marcelo:

muchas gracias por tus ánimos. Intentamos hacer contenido de calidad para que las cosas posicionen :)

Respecto a tu pregunta: puedes usar el mismo método descrito ahí arriba si necesitas hacer una redirección, aunque sea interna. No hay nada de malo en ello.

También puedes hacerlo utilizando algo como esto:

RewriteEngine On
RewriteBase /
RewriteRule origen_redireccion /destino_redireccion [R=301,L]

También puedes utilizar la siguiente sintáxis:

Redirect 301 /pagina_antigua /nueva_pagina

No hay ventajas ni inconvenientes significantes en una u otra, así que, usa la que más te guste.

¡Un saludo!

Responder
Avatar del autor del comentario

hector

19/09/2018 a las 18:43

BUENAS ALVARO:
que opción es la que tengo que escoger si lo que me han hecho en el hosting es instalar un certificado SSL, y no he cambiado de dominio, sino paso de http a https. Muchas gracias por anticipado.

Responder
Avatar del autor del comentario

Héctor Luaces

08/10/2018 a las 08:42
Hola, Hector:en ese caso no basta solo con una redirección, tienes que hacer un cambio de HTTP a HTTPS.Échale un vistazo a éste artículo donde lo explicamos.Un saludo.
Responder
Avatar del autor del comentario

Ricardo Xalma

24/10/2018 a las 12:59

Tengo errores que se repiten, redireccionamientos 301 desde / p = ?? No sé si puedo eliminarlos, y muchos errores 404 de url domain.com/ language /wp-json/oembed/1.0/embed?_ _ _ _

me gustaría poder crear una redireccionamiento único de todo lo que contenga en /?p=(*) o /(*)/wp-json/oembed/1.0/

Responder
Avatar del autor del comentario

Héctor Luaces

26/10/2018 a las 09:09

Hola, Ricardo:

los redireccionamientos 301 desde "?p=" son normales, puesto que esas son las "URLs no amigables" de WordPress. Si ves muchas como esa es que alguien accede a tu página mediante éste tipo de enlaces.

Los de "embed" es que alguien está intentando incrustar contenido de ese dominio. Entiendo que has cambiado "domain.com" por el tuyo, ¿no?

Los redireccionamientos de "?p" no te recomiendo cambiarlos por lo que ya te expliqué. Los del embed harían que la gente no pueda incrustar tu página en las suyas (generando así el enlace con la miniatura de tu post). ¿Es lo que quieres?

Un saludo.

Responder
Avatar del autor del comentario

yordis gonzalez

21/03/2019 a las 17:23

Hola, quiero hacer esto pero no se como, lo que pasa es le he agregado una palabra a todos los url de los articulos dentro de mi pagina y ahora todas la url que esta en el buscador de google llevar a mi pagina error.

mi pagina estaba asi antes ejemplo:: http://dominio. com/imagenes/perros-1 y yo la cambie a
http://dominio. com/imagenes/mira-los-perros-1

la parte donde dice perros seria el titulo de mi articulo y el 1 es el id eso siempre va a cambiar pero nose que colocar dentro de mi .htaccess

Responder
Avatar del autor del comentario

Héctor Luaces

25/03/2019 a las 09:53

Hola, Yordis:

Si me das más detalles intento ayudarte. ¿Cómo eran tus URLs y qué palabra le las añadido?, ¿se la añadiste delante o detrás?

Un saludo.

Responder
Avatar del autor del comentario

Lucas Maranho

12/04/2019 a las 19:12

Buenas Alvaro, muchas gracias desde Brasil!

Pero tuve un pequeño problema, a ver si puedes ayudarme =D

para el dominio tengo un dominio por completo que me gustaria hacer el redirect... hice un cambio de branding y consecuentemente quiero aprovechar el legado SEO.

Tengo en el htacces lo que recomendaste

redirectMatch 301 ^(.*)$

Pero lo que está sucediendo, que URLs antiguas de páginas no aplican el redirect si llevan el https.

Responder
Avatar del autor del comentario

Héctor Luaces

15/04/2019 a las 12:46

Hola, Lucas:

Sin ver tu ".htaccess" imagino que el problema es que tienes varias redirecciones en él, siendo una de ellas la del "https".

Asegúrate de que las redirecciones 301 figuran en la parte superior del archivo; cuanto antes estén, mejor. De no hacerlo así puede suceder que otra redirección se ejecute con más prioridad y no aplique la siguiente correctamente.

Un saludo.

Responder
Avatar del autor del comentario

Lucas Maranho

17/04/2019 a las 20:58

Hola Héctor...

Intentaré poner aqui lo que tengo configurado y cual es la URL que no redirecciona. =D

redirectMatch 301 ^(.*)$ https://liveseo.com.br

Eso fue un cambio de dominio, actualmente tengo este URL que no me redirecciona: apdweb.com.br/curso-presencial-em-maringa/

Me dices que tendria que hacer otros redirects antes?

Gracias desde ya... sois unos monstruos!

Una observación, no tengo nada más que lo de arriba en el Hatccess

Responder
Avatar del autor del comentario

Héctor Luaces

22/04/2019 a las 09:27

Hola, Lucas:

A mi me funciona correctamente la redirección. Eso sí: hay un aviso de certificado que es necesario aceptar antes de que se realice.

Si el problema al que te refieres es el del certificado, lo que tienes que hacer es generar uno válido ya que, de lo contrario, el navegador te mostrará el aviso de que tiene algo mal.

Este paso no puede evitarse si la conexión es por SSL, ya que, para saber el navegador que ha de hacer una redirección primero ha de conectarse al servidor y para ello es necesario validar la conexión SSL, que no puede validarse sin consentimiento del usuario al estar mal el certificado.

Un saludo.

Responder
Avatar del autor del comentario

Antonio Ropero

26/04/2019 a las 14:22

Hola, me gustaría hacer una consulta. Quiero hacer una redirección de dominio, ya que la web actual tiene un subdominio y quiero ponerle un dominio propio. La web no se va a mover del hosting, solo va a cambiar el dominio. La redirección se pondría en el .htaccess original o tendría que crear un nuevo apartado en el hosting para el antiguo subdominio, donde poner la redirección en su .htaccess??
Un saludo y muchas gracias por toda esta información.

Responder
Avatar del autor del comentario

Héctor Luaces

29/04/2019 a las 08:41

Hola, Antonio:

La redirección debería crearse en el .htaccess asociado al directorio del antiguo subdominio.

¡Un saludo!

Responder
Avatar del autor del comentario

Javier Frases

27/05/2019 a las 15:05
Hola Alvaro, primero enhorabuena por el artículo, muy completo y bien explicado.Tengo una caso de redirección 301 que no esta en el artículo y no sé cómo hacerlo... quizás puedas ayudarme. Los links en mi versión amp (ofrecida desde google) me dirigen a. Esto pasa cuando es google el que ofrece mi versión amp, yo hago pruebas y cuando la ofrezco yo desde mi servidor los links van bien a. ¿Cómo hago la redirección desde mi htaccess para que todas esas webs con la coletilla sean redirigidas a sus respectivas urls correctas? En todos los links me pasa lo mismo, me llevan a la url correcta más la coletilla q parece que agrega google. Saludos y gracias
Responder
Avatar del autor del comentario

Héctor Luaces

07/06/2019 a las 09:16

Hola, Javier:

Lo más probable es que tengas algún javascript de analítica que esté añadiendo esos campos al final cuando Google entra en tu web.

Sería bueno localizarlo y arreglarlo, pero si necesitas una redirección tendrías que hacer algo parecido a esto (no puedo dártela exacta sin tener las URLs):

RewriteRule ^url-ejemplo.html.*$ /url-ejemplo.html [L,R=301,QSD]

Un saludo.

Responder
Avatar del autor del comentario

Fran J. Pérez

11/06/2019 a las 12:24

Hola Alvaro,

Soy cliente vuestro, quiero redirigir el dominio principal a una carpeta para que muestre otra web (Que está en esa carpeta). Tengo la redirección por el Cpanel "redirige" y con htaccess y no redirige la web, ¿Puedes decirme como solucionarlo?

Gracias.
Un saludo

Responder
Avatar del autor del comentario

Héctor Luaces

17/06/2019 a las 12:32
Hola, Fran:Seguramente exista algún conflicto en las reglas generadas de tu archivo .htaccess. Ábrenos un ticket y lo miramos sin problema.Un saludo.
Responder
Avatar del autor del comentario

Laura Gonzalez

26/07/2019 a las 21:10

Hola Alvaro , queria hacer una pregunta quiero redirigir un dominio completo con todo el contenido a otro dominio que ya tiene contenido y quiero que el contenido del viejo dominio se agregue al nuevo dominio , la pregunta es
Esto se hace automaticamente escribiendo esas lineas de codigo en el hthacces o yo debo crear los articulos en la nueva pagina ?
Es decir yo tengo un post posicionado en el antiguo dominio , cuando el usuario entre en el va a ir al mismo articulo pero en el dominio nuevo ? eso no entiendo gracias

Responder
Avatar del autor del comentario

Héctor Luaces

29/07/2019 a las 13:32

Hola, Laura:

Si el contenido no existe en el nuevo dominio, pero quieres conservarlo, será necesario que lo crees otra vez en el nuevo dominio.

Un saludo.

Responder
Avatar del autor del comentario

Hernan Navarro

14/08/2019 a las 06:14

beunas alvaro, como podria solucionar este error

¡Cuidado! No ha configurado una redirección 301 para enviar tráfico a su dominio preferido. Si las versiones con www. y sin www. cargan correctamente ¡es contenido duplicado!

Responder
Avatar del autor del comentario

Héctor Luaces

23/09/2019 a las 08:14
Hola, Hernan:para solucionar ese error tienes que redirigir el "www.tudominio" a "tudominio.com", o viceversa.Te dejo aquí un artículo que explica cómo hacer redirecciones en tu archivo .htaccess.Cualquier cosa nos dices.Un saludo.
Responder
Avatar del autor del comentario

Cristhian González

06/10/2019 a las 13:46

Estimado Alvaro, soy de Chile y nuevo en esto, quisiera ver la posibilidad si puedes ayudarme, tengo un sitio nuevo y cada vez que consulto me arroja este error
“For search bots website addresses with www and without it are considered as different pages. Adding redirection help you avoid double content panelty.”

He probado combinaciones que sugieres en este apartado y aún así persiste .
Alguna otra que pueda probar ?
Muy agradecido

Responder
Avatar del autor del comentario

Héctor Luaces

11/10/2019 a las 12:03

Hola, Cristhian:

eso es que necesitas una redirección de "www" a "sin www", o viceversa.

Al final del artículo tienes las dos redirecciones para que puedas copiar y pegar, son las que se llaman "REDIRIGIR DOMINIO CON ‘WWW’" y "REDIRIGIR DOMINIO SIN ‘WWW’".

Si no te funcionan, revisa que las hayas copiado bien, que estén en el archivo ".htaccess" correcto (normalmente la carpeta raíz de tu página web) y que las directivas pegadas estén justo al principio del archivo.

¡Un saludo!

Responder
Avatar del autor del comentario

paolo bindi

12/10/2019 a las 22:03

Hola Alvaro,
Antes de nada muchas gracias por tu blog y para esta entrada.
No consigo solucionar este problema que me devuelve un sito que analiza mi portal.

"¡Cuidado! No ha configurado una redirección 301 para enviar tráfico a su dominio preferido. Si las versiones con www. y sin www. cargan correctamente ¡es contenido duplicado!"

Entonces he modificado el .htaccess tal y como has comentado tu. He usado "REDIRIGIR DOMINIO CON ‘WWW’" porque el otro no me funciona. Así es el cambio que he añadido al final del fichero (de un portal Wordpress)

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

Pero parece que no haya cambiado nada.
Podría écharme un cable, por favor?

Si hace falta te paso el dominio de la web, pero no quiero hacer spam.
Muchas gracias!

Responder
Avatar del autor del comentario

Héctor Luaces

13/11/2019 a las 10:15

Hola, Paolo:

En principio lo veo bien. Dame el dominio y le echo un vistazo, no te preocupes por el spam que ya lo edito en tu comentario antes de que se haga público para que no se desvele.

Un saludo.

Responder
Avatar del autor del comentario

Manu

19/12/2019 a las 10:27

¿Qué diferencia hay entre hacer las redirecciones desde htacces o desde el propio CMS?

Responder
Avatar del autor del comentario

Héctor Luaces

02/01/2020 a las 10:51

Hola, Manu:

las del archivo .htaccess son gestionadas por el servidor web y por ende suelen ser más rápidas de procesar.

Las generadas por el CMS se gestionan a nivel de aplicación y, si bien son más lentas, pueden tener en cuenta otro tipo de lógica a nivel de aplicación (p.ej.: "redirecciona solo si el usuario no se ha identificado").

Un saludo.

Responder
Avatar del autor del comentario

Francisco

08/01/2020 a las 10:10

Hola Álvaro, magnifico post.
Para redirigir un dominio expirado a la home o url concreta de mi web ¿como se haría?
Actualmente lo hago con el plugin 404page para crear una pagina de error personalizada.
Además todos los enlaces que consigo del dominio expirado son "nofollow" ¿es normal?
Saludos.

Responder
Avatar del autor del comentario

Alvaro Fontela

20/03/2020 a las 12:41

Hola Francisco, posiblemente el nofollow lo meta el plugin 404page, ya que a los 404 normalmente si que se les mete nofollow.

Para redireccionar, debes hacerlo con comodines: https://www.inboundcycle.com/blog-de-inbound-marketing/que-son-las-redirecciones-301-y-302-y-como-configurarlas

En ese post, justo la seccion "Mover un dominio completo".

Responder
Avatar del autor del comentario

Francisco

21/01/2020 a las 19:35

Hola Alvaro, gracias por tu aporte.
Te cuento mi caso concreto he comprado algún dominio expirado y la idea es hacer una 301 a una url específica de otro dominio.Hasta ahora lo he hecho desde el hosting pero lo que pasa es.
1º El dominio destino coge el link pero como no follow.
2ª Cuando entro a algún enlace del dominio expirado y pincho en el anchor text no carga la página destino, para ver si funciona la redirección.
Esto se podría solucionar con archivo .htaccess??

Responder
Avatar del autor del comentario

Alvaro Fontela

20/03/2020 a las 12:39

Bufff, pues es la primera vez que veo un caso así, no hay razón para que cargue un Nofollow.

Y sobre el punto dos, es porque tienes que hacer una redireccion con comodines en el .htaccess

Responder
Avatar del autor del comentario

Javier

23/03/2020 a las 13:42
Hola Álvaro, enhorabuena por el post, muy completo :)

Tengo una duda sobre una serie de redirecciones que no consigo solucionar, a ver si tú me puedes ayudar...

Quiero redireccionar todas las URLs de un site que acaben en p.ej. %terminacion01 para que terminen en %terminacion02 y tengo muchas URL:
-
-
-
-
- etc.

No sé si me explico... Querría que todas las anteriores redirigieran a lo mismo pero terminado en %terminacion02

Sé que existe una instrucción para redireccionar un dominio sin perder la estructura: redirectMatch 301 ^(.*)$ http://dominiodeejemplo.com$1

¿¿Existe algo así como un "redirect 301 ^(.*)%terminacion01 " que sirviese para mi caso??

Muchas gracias!!
Responder
Avatar del autor del comentario

Hector Luaces

24/03/2020 a las 13:23
Hola, Javier:

sí, los comodines puedes usarlos en cualquier parte de la URL, así que si haces como dices debería funcionarte. No obstante, ten cuidado con los caracteres especiales (%, -, !, $, etc.) porque pueden ser reservados internamente por tu servicio web. Para hacer pruebas y descartar que no te funcionen a raíz de esos caracteres puedes sustituirlos por un simple "." que se traduce como "cualquier caracter único".

¡Un saludo!
Responder
Avatar del autor del comentario

Javier

31/03/2020 a las 13:17
Hola Héctor, gracias por tu respuesta ;)

Nada, he probado mil combinaciones de un « RedirectMatch 301 ^(.*)/%terminacion01 $1%terminacion02 », incluso sustituyendo caracteres raros por . como decías y no sucede nada. Quizá sea cosa del servicio web...
Responder
Avatar del autor del comentario

Javier

04/04/2020 a las 18:28
Lo logré :)

Al final era una combinación de ambos: poniendo comodines tanto delante como detrás y sustituyendo los caracteres raros por . (punto)

RedirectMatch 301 ^(.*)/.terminacion01(.*) $1/%terminacion02$2

Lo pongo por si alguien tiene un caso similar y le es útil ;) Muchas gracias por vuestra ayuda!!
Responder
Avatar del autor del comentario

Tom

19/04/2020 a las 18:53
Buenas Hector,

a ver si me puedes ayudar ya que no consigo resolver esta duda ni siquiera entre profesores SEO.
Si quiero redireccionar un dominio A (porque tiene muchos enlaces a la home) hacia un dominio B que es nuevo, y lo único que quiero del A es la fuerza de esos enlaces (no busco tráfico ni contenido), ¿cuál es la redirección 301 exacta que debo realizar?
Muchas gracias!!!
Responder
Avatar del autor del comentario

Alvaro Fontela

20/04/2020 a las 16:38
Hola Tom, con un 301 redireccionas TODO y eso es lo que deberías hacer, si solo redireccionas a los bots de los buscadores harías ofuscación de contenido y eso se hace con otro tipo de soluciones Javascript, no con el .htaccess

PD: La ofuscación de contenido en la mayoría de los casos es penalizable por Google.
Responder
Avatar del autor del comentario

TOM

26/04/2020 a las 01:36
Gracias Alvaro por responder,
pero me sigue quedando la duda de en este caso, cuál sería la mejor forma de redireccionarlo de las que propones. Es decir, qué código es el más adecuado.
Un saludo y gracias por tus aportaciones
Responder
Avatar del autor del comentario

JORDI

14/05/2020 a las 11:21
Gracias a todos por las aportaciones sobre el tema.
Despues de leer el articulo y otros muchos solo he conseguido una muy pequeña parte de lo que necesito. Comento:
Tengo mi web prestashop antigua, que la podemos llamar www.miweb.com. Ahora la he creado de nuevo partiendo desde 0 y la continuo llamando www.miweb.com. La nueva la tengo en local y estoy pendiente de solucionar el tema de las redirecciones para activarla.
La web antigua tiene una url inicial " " desde aqui funciona todo.
La nueva tiene la url inicial
He conseguido con la siguiente redirección escrita en el .htacces
" redirect 301 /primer-nivel "
que realmente al escribir en la barra de direcciones de mi nueva web: " " no de error 404 y aparezca la nueva direcion . Hasta aqui perfecto.
Ahora lo que quiero es redireccionar paginas y categorias. El formato de la url de la antigua es:
" "
el formato url de los articulos o categorial en la nueva es:
" "
escribo la siguiente redireccion en .htaccess :
" redirect 301 /primer-nivel/index.php?option=com_content&view=article&id=62&Itemid=60 "
Según todo lo que he leido, creo que es correcto, pero no funciona. En la barra de direcciones del navegador sale:
" "
Como es logico està url no existe y sale error 404.
Alguien me puede decir que hago mal y si se puede corregir.
Gracias a todos por vuestras aportaciones.
Responder
Avatar del autor del comentario

Alvaro Fontela

18/05/2020 a las 12:40
Hola Jordi, si necesitas ayuda con tus redirecciones contacta con tu proveedor de hosting, si tu proveedor de hosting somos nosotros, contacta con el departamento de soporte.

Como comprenderás, lo que nos estas planteando es un caso muy especifico que podría ser contabilizado como consultoria.
Responder
Avatar del autor del comentario

Daniel Acevedo

10/06/2020 a las 06:06
Hola como estas mira yo tengo un blog de Blogger le he añadido un dominio .com el problema es que cuando ya tengo todo preparado para mandar la solicitud a Adsense lleno el formulario y cuando confirmo todo y pego el código html de verificación entre la etiqueta head y doy confirmar, Google me dice que no puede acceder a mi sitio web o encontrar mi Blog. Estuve investigado un poco y note qué al momento de pegar la URL Google la acepta de esta forma https://ejemplo.com pero esta dirección URL no redirige a mi Blog en cambio arroja la página de error de Google en el navegador, mi URL principal Esta en https://www.ejemplo.com. Mi pregunta es cómo hago para que la URL https://ejemplo.com sea redirigida a la dirección de URL https://www.ejemplo.com espero a verme explicado bien.
Responder
Avatar del autor del comentario

Alvaro Fontela

14/06/2020 a las 22:32
Lo siento Daniel, no trabajamos con Blogger...
Responder
Avatar del autor del comentario

Thomas

29/07/2020 a las 22:46
Hola una consulta.
Quiero redireccionar un dominio expirado y todas sus entradas a mi dominio actual, esto también incluye la redireccion de entrada por entrada ya que la ruta de mi dominio es diferente y quiero aprovechar su trafico y enlaces que tienen.

dominioexpirado. com
dominioactual. net

Usare esto para el home, en el dominioexpirado, está bien ?
redirectMatch 301 ^(.*)$ http://dominioactual. net

Ahora para las entradas que debería de usar?
dominioexpirado. com/pintar-mesa
dominioactual. net/tornillo/pintar-mesa

espero su ayuda.
Responder
Avatar del autor del comentario

Alvaro Fontela

30/07/2020 a las 15:24
https://raiolanetworks.com/blog/como-hacer-una-redireccion-301-desde-el-htaccess/#redireccion_301_para_cambios_de_dominio
Responder
Avatar del autor del comentario

alan

26/09/2020 a las 00:29
Hola Buenas tardes, muy buen post y ayudas
queria preguntarte
tengo una pagina www.midominio.com.ar y quiero que al entrar vaya a a midominio.com.ar/web para ir al wordpress nuevo
yo estoy trabajando el htacces y coloco el codigo arriba de todo
RewriteCond %{HTTP_HOST} ^midominio\.com\.ar$ [OR]
RewriteCond %{HTTP_HOST} ^www\.midoimio\.com\.ar$
RewriteRule ^/?$ "http\:\/\/www\midomnio\.com\.ar\/web" [R=301,L]
pero cuando pongo www.midominio.com.ar/empleo sigue viendo la pagina vieja, como hago para que todos las subcarpetas de la pagina vieja me lleven a www.midominio.com.ar
muchas gracias
Responder
Avatar del autor del comentario

Herman

23/10/2020 a las 09:41
Hola Alvaro, recientemente he cambiado todos los enlaces permanentes que tenían la estructura midominio.com/2020/03/frase a midominio.com/frase, es decir quitándo la fecha. He enviado un sitemap nuevo, sin embargo he verificado los posts en Google y sigue la estructura anterior. ¿Qué plugin puedo utilizar para no tener que ir redireccionado post a posts? Gracias
Responder
Avatar del autor del comentario

Alvaro Fontela

23/10/2020 a las 12:16
Hola Herman, si no los has redireccionado, te recomiendo hacerlo cuanto antes para no ser penalizado por contenido duplicado...

Este post te ayudara: https://www.wpbeginner.com/wp-tutorials/how-to-remove-the-date-from-wordpress-urls/
Responder
Avatar del autor del comentario

Berta

06/11/2020 a las 14:01
Hola Albaro soy Berta, la chica que te entrevistó para un video académico de una empresa.

Te quería hace una pregunta relativo a un mensaje que me aparece en el informe de woorank.

--Tu sitio web no redirige www.xx.com y xx.com a la misma URL. Es crucial que soluciones este problema.
La etiqueta rel="canonical" se usa para indicar a los motores de búsqueda cuál es la versión preferida, y usar un redireccionamiento 301 para diversificar el tráfico al servidor secundario.--

En este caso, sería mejor realizar una redirección 301 ya que quiero que se derive de la url con www a sin las 3w, entonces debería escribir en el htacces extactamente lo siguiente?

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

Muchas gracias
Responder
Avatar del autor del comentario

Alvaro Fontela

06/11/2020 a las 18:23
Hola Berta, no me ha quedado claro el problema exactamente, ¿puedes enviarme la URL a alvarofontela.com/contacto e intento decirte algo mas exacto?
Responder
Avatar del autor del comentario

Juan Peralta

09/11/2020 a las 18:57
Hola
Tengo un wordpress en un directorio de un dominio y quiero redireccionarlo a otro directorio de otro dominio. ¿Sería esta la instrucción?:
redirectMatch 301 ^(.*)$

Gracias
Responder
Avatar del autor del comentario

Juan Peralta

23/11/2020 a las 11:39
Hola,
soy cliente vuestro desde hace tiempo, aunque esta consulta específica se refiere a un dominio y hosting que todavía no están en Raiola.
Tenemos un wordpress en una carpeta de un subdominio, y queremos que apunte a otra carpeta de otro dominio, manteniendo las urls diferentes.
El artículo me sugiere que la solución podría ser la siguiente, pero me gustaría poder confirmarla antes de ponerla en marcha:

redirectMatch 301 ^(.*)$

Muchas gracias
Responder
Avatar del autor del comentario

Alvaro Fontela

23/01/2021 a las 22:42
Hola Juan, pues...sin probar el código te diría que esta bien. Digo sin probarlo porque puede haber algún carácter "extra".
Responder
Avatar del autor del comentario

tomás

28/09/2021 a las 12:34
Hola! Muy interesante, una duda:

Si utilizamos:
redirectMatch 301 ^(.*)$ http(:)//dominiodeejemplo(.)com$1

¿También hará redirección a subdominios? Queremos aplicarlo, pero evitando que haga una redirección de subdominio ya que se va a mantener.

Gracias!!
Responder
Avatar del autor del comentario

Alvaro Fontela

14/11/2021 a las 23:10
Hola Tomas, no lo puedo garantizar, pero creo que no, que solo afecta al dominio.
Responder
Avatar del autor del comentario

Harold Medellín

04/10/2021 a las 16:45
Hola Alvaro,
Me pregunto si puedes ayudarme con mi caso:

Tengo un listado de URLs que quiero redirigir una a una Redirect 301 http(:)//dominioviejo(.)com/imagenes/ http(:)//dominio(.)com/imagenes/.

Pero el resto de URLs que no estén dentro de ese listado, las quiero redirigir al Home del nuevo dominio. ¿Es posible?
Responder
Avatar del autor del comentario

Alvaro Fontela

14/11/2021 a las 23:11
Si, usando en las otras el comodín de esta seccion: https://raiolanetworks.com/blog/como-hacer-una-redireccion-301-desde-el-htaccess/#redireccion_301_para_cambios_de_dominio
Responder
Avatar del autor del comentario

Karin

14/12/2021 a las 19:39
Primero, muchas bendiciones Álvaro.

No encuentro información sobre este tipo de redirección:
Tengo que redirigir una aplicación php con la variable "postergar" que ya no se va a usar hacia una nueva "p":

de: /examen/?postergar=1
hacia: /examen/?p=1

NOTA: El id 1 son miles, ejem:

/examen/?postergar=1
/examen/?postergar=2
/examen/?postergar=3
/examen/?postergar=4 ...

Muchas gracias.
Responder
Avatar del autor del comentario

Israel

18/12/2021 a las 23:53
Muy bueno el post, una pregunta, cambie de dominio y estructura de URL y no deseamos perder el tráfico de las URL originales. Son más de 3000 URL y si lo hago por htaccess el mismo pesa bastante, no lo puedo editar directo por cPanel y en ocasiones se borra. Alguna recomendación? Gracias
Responder
Avatar del autor del comentario

Alvaro Fontela

31/12/2021 a las 01:51
Hola Israel, pues a no ser que lo hagas con comodines como mostramos en el post, la otra opción es el listado de redirecciones.
Responder
Avatar del autor del comentario

vieradel

29/09/2022 a las 19:18
Hola! Si tengo entradas en un blog de wordpress en el dominio principal donde tambien tengo paginas institucionales, y ahora quiero llevar solo las entras del blog, no las paginas, a un sub dominio como se te ocurre hacerlo?

Gracias!
Responder
Avatar del autor del comentario

Alvaro Fontela

29/10/2022 a las 19:57
Hola Vieradel, así de primeras se me ocurre usar este plugin: https://wordpress.org/plugins/post-type-switcher/
Responder
Avatar del autor del comentario

Perico

16/01/2023 a las 20:05
Hola, como podría redirigir automáticamente a un dominio después de un teimpo limitado, pongamos después de 7 segundos..? Entiende lo que quiero decir? Que cuando alguien entre en la web antigua, a los 7 segundos se vaya directamente a la nueva.

Cómo se quedaría el codigo en htaccess ?

EJEMPLO:
redirectMatch 301 ^(.*)$ ht(.)tps://www(.)nuevaweb(.)com
Responder
Avatar del autor del comentario

Alvaro Fontela

21/01/2023 a las 16:12
Hola Perico, con el .htaccess directamente no podrias. Tendria que ser por cabecera HTML, por PHP o por Javascript.
Responder

Deja una respuesta

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