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.

Eliminar el www de la URL con .htaccess

Tal y como se suele aconsejar es recomendable decidirse por usar nuestro dominio con www o sin www para temas de posicionamiento. Yo suelo elegir sin las www. Para hacerlo una opción es usar el fichero .htaccess y poner el siguiente código:

# Quitar el www del nombre de dominio
RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,QSA,L]

Si lo que buscamos es lo contrario, es decir, que se añada el www a la URL debemos usar:

# Redirigir el subdominio sin www a www
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,QSA,L]

Visto en Search Engine Land.

Activar register_globals

Vale, sí, es una locura hoy en día y una fuente inagotable de problemas en cuanto a seguridad se refiere. Sin embargo hay casos en los que en muy útil activar el register_globals. Precisamente hace unos días me encontré con un cliente que quería actualizar un software antiquísimo escrito en PHP que necesitaba tener activado el register_globals. Dado que no conocía el funcionamiento de su aplicación necesitaba tener activada la opción del register globals.

Dicho y hecho, edité el fichero .htaccess de la carpeta donde tenía instalada dicha aplicación y añadí la línea:

php_value register_globals 1

y listo.