Estoy trasladando un blog alojado en un servidor Apache a un nuevo dominio.
Los enlaces permanentes se mantienen iguales para las publicaciones del blog, pero hay algunas páginas donde la URL cambiará en el nuevo dominio.
Mi pregunta es si lo siguiente es posible y cómo lo haría con las reglas de reescritura.
Los slugs/enlaces permanentes de URL de las publicaciones del blog y la mayoría de las páginas del dominio anterior permanecerán iguales en el nuevo dominio. Así que imagino que podría agregar una regla de redireccionamiento que redireccione desde https://huiskopenomteverhuren.nl/
hacia, https://vastgoedmentor.com
ya que encontrará el mismo /slug en el nuevo dominio.
Algunas páginas del antiguo sitio web se han movido al nuevo enlace permanente. Por lo tanto, necesito reglas adicionales para redirigir, por ejemplo https://huiskopenomteverhuren.nl/kennisbank/
, https://vastgoedmentor.com/resources
y hacer esto también para algunas otras páginas.
Respuesta1
Puede crear múltiples RewriteRule
directivas con expresiones regulares dentro de la configuración de su servidor. Debes comenzar con las redirecciones específicas con enlaces permanentes modificados. La redirección general para todas las demás páginas se puede agregar al final.
RewriteEngine On
RewriteRule ^/kennisbank(/.*)?$ https://vastgoedmentor.com/resources$1 [END,R=301]
RewriteRule ^/old2(/.*)?$ https://vastgoedmentor.com/new2$1 [END,R=301]
RewriteRule ^/old3(/.*)?$ https://vastgoedmentor.com/new3$1 [END,R=301]
RewriteRule ^/(.*)$ https://vastgoedmentor.com/$1 [END,R=301]
La notación de (/.*)?
realizará la redirección con y sin una barra diagonal y agregará detalles de ruta adicionales a la nueva URL. Por lo tanto, recurrirá huiskopenomteverhuren.nl/kennisbank/something-or-nothing
a vastgoedmentor.com/resources/something-or-nothing
.
Más detalles sobre el RewriteRule
se pueden encontrar en
https://httpd.apache.org/docs/current/mod/mod_rewrite.html#rewriterule
Como todas las reglas apuntan a un dominio diferente, no hay riesgo de caer en un bucle. Pero sigue siendo una buena idea agregar la END
bandera a todas las reglas para evitar que se evalúen las reglas restantes. Además de la L
bandera, la END
bandera también evita la evaluación de reglas adicionales en los archivos .htaccess.
Más detalles sobre las banderas se pueden encontrar en https://httpd.apache.org/docs/current/rewrite/flags.html