Para realizar la mayoría de las tareas puede ser suficiente con seguir las indicaciones que se ven en distintos artículos de internet como el de Estela Franco, que detalla con ejemplos e imágenes como realizar redirecciones 301.
Sin embargo en muchas ocasiones tenemos la necesidad de usar expresiones regulares y ahorrarnos un buen tiempo. En mi caso particular tenía URLs antiguas como la siguiente:
www.tudesarrolladorweb.com/trabajos-realizados/kartuned
Y para un mejor SEO y porque al fin y al cabo dónde mejor para experimentar que en todavía humilde sitio web decidió cambiar las URLs que mostraban mi trabajo a lo siguiente:
https://www.tudesarrolladorweb.com/trabajos-jon-gonzalez-garrido/kartuned
Por tanto podría haber ido trabajo por trabajo poniendo redirecciones como 301, sin embargo, preferí usar este truco de redirecciones 301.
RedirectMatch 301 ^/trabajos-realizados/(.*)$ https://www.tudesarrolladorweb.com/trabajos-jon-gonzalez-garrido/$1
Mediante ese código lo que se le está diciendo al htaccess es que todo lo que venga con /trabajos-realizados/ALGO sustituya por la URL correcta añadiendo al final ese "ALGO".
Si se necesitara redirigir una parte de la ruta que tenga posteriormente dos trozos con "/" se haría lo siguiente:
RedirectMatch 301 ^/trabajos-realizados/(.*)/(.*)$ https://www.tudesarrolladorweb.com/trabajos-jon-gonzalez-garrido/$1/$2
Se le estaría diciendo que todo aquello que venga con "trabajos-realizados" seguido por 2 trozos o carpetas de la ruta fuera sustituido por la URL que viene a continuación poniendo al final esos dos trozos o carpetas.
Mediante esta redirección con expresiones regulares en htaccess se pueden realizar tanto redirecciones permantentes (301) como temporales (302).
htaccess utiliza un lenguaje de expresiones regulares llamado regex. Para familiarizarse con dicho lenguaje y probar las expresiones recomiendo la siguiente página.
Con las expresiones regulares en htacces se puede dar solución a lo siguiente:
- Cambios de URLs motivados por cambios en las categorías.
- Cambios de URLs motivamos por cambio de dominio.
- Cambios de URLs motivados por cambios en el idioma.
- Cambios de URLs motivados por mover una serie de artículos otra categoría.
Eso si, siempre que se vaya a modificar el fichero .htaccess se debe realizar una copia de seguridad ya que cualquier error de sintaxis puede suponer que el sitio web de error 500 y por tanto quede "colgado".
¿Os ha sido útil? No dudéis en preguntar dudas en los comentarios.