Redirección 301 a un nuevo dominio con algunas URL específicas.
Vi temas similares pero no encontré una respuesta práctica a mi problema.
Estoy moviendo mi antiguo sitio web a uno nuevo, y algunas URLs están cambiando.
Me gustaría hacer una redirección genérica 301 al nuevo dominio (porque la mayoría de rutas son las mismas), mientras redirijo individualmente algunas URLs.
Esto es lo que tengo en el archivo .htaccess de mi antiguo sitio web:
<ifmodule mod_rewrite.c="">
RewriteEngine On
RewriteCond %{HTTP_HOST} ^old\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.old\.com$
RewriteRule (.*)$ https://new.com/$1 [R=301,L]
Redirect 301 "/custom/url/" "https://new.com/my-custom-url"
</ifmodule>
Pero la redirección 301 va a: https://new.com/custom/url en lugar de https://new.com/my-custom-url
Algunas de mis URLs también tienen parámetros de URL que me gustaría redirigir, como:
Redirect 301 "/brand.php?name=Example" "https://new.com/Example"
Redirect 301 "/brand.php?name=Example2" "https://new.com/another/url"
que tampoco parecen funcionar.
Muchas gracias por su ayuda.
davy.ai
Solución
Para hacer una redirección 301 genérica al nuevo dominio y redirigir individualmente algunas URLs manteniendo sus respectivos parámetros, puede modificar su código .htaccess de la siguiente manera:
En el código anterior, utilizamos la directiva
RewriteRule
para hacer una redirección 301 genérica al nuevo dominio para todas las URLs, incluso aquellas con parámetros. También utilizamos la directivaRedirect
para redirigir URLs específicas a sus nuevas ubicaciones.Además, utilizamos la directiva
RewriteCond
junto con la variable%{QUERY_STRING}
para hacer coincidir los parámetros en las antiguas URLs y la directivaRewriteRule
para redirigirlas a sus nuevas ubicaciones manteniendo sus respectivos parámetros.Al modificar su código .htaccess como se muestra arriba, debería poder lograr el resultado deseado.