Cambiar guiones bajos por guiones en las URL con .htaccess

Siempre se ha dicho que es mejor usar guiones “normales” (‘-‘ ó dashes) en lugar de guiones bajos (‘_’ ó underscores) en las URL porque Google los indexaba mejor.

Sin embargo esto parece que está cambiando (o ha cambiado ya) tal y como comentaba Matt Cutts el año pasado. En ese post Matt nos contaba que, aunque recomienda usar guiones ‘-‘, él no perdería tiempo pasando de un sistema al otro.

Aún así es posible que quieras hacerlo. Aquí tienes una posible solución:

RewriteRule ^([^_]*)_(.*)\.html$ /$1-$2.html [R=301,L]
RewriteRule ^([^_]*)_([^_]*)_(.*)\.html$ /$1-$2-$3.html [R=301,L]

Esto cambia páginas del tipo:

seccion_coches.html
seccion_coches_motos.html

por:

seccion-coches.html
seccion-coches-motos.html

Y, dado que se usan redirecciones 301, no se pierde Page Rank ni se considera contenido duplicado.