URL es un acrónimo de Uniform Resorce Locator, que traducido al castellano viene a decir Localizador Uniforme de Recursos. Es un estandard para identificar documentos o ficheros en internet.
Cualquer URL se compone de estas partes (algunas pueden estar ausentes):
[scheme]://username:password@hostname/path?arg=value#anchor
Como ejemplo, vamos a descomponer esta URL:
http://www.mipaginaweb.com/articulos/ver_articulo.php?id=23029
[scheme] => http
[host] => www.mipaginaweb.com
[path] => /articulos/ver_articulo.php
[query] => id=23029
La query string es lo que sigue al símbolo ?. En el ejemplo la query string es id=23029.
Es bien sabido que los buscadores prefieren páginas estáticas .html a las generadas dinámicamente.
Esto puede ser incluso peor; Google prefiere no indexar en su base de datos documentos que contengan query string en la URL.
(Ver: Recomendaciones para Buscadores)
Por lo tanto es muy importante desde un punto de vista de optimización en los buscadores tener páginas estáticas. Si no es posible convertir toda nuestra web a páginas estáticas, se puede simular eliminando la query string en las URLs y haciendo algunos trucos con el servidor web, de manera que el contenido seguirá siendo generado dinámicamente, pero con una url de apariencia estática.
Es conveniente seguir las recomendaciones de los buscadores a la hora de diseñar una web, en este sentido google ha publicado la siguiente información:
Lo ideal es que todos los documentos sean ficheros .html estáticos. Esto se pude conseguir haciendo regularmente un volcado de la base de datos a ficheros html, con lo que además se consigue liberar de carga al servidor.
Si no es posible esta opción, se puede simular el contenido estático elmininando la query string de las urls. Aquí hay algunos enlaces para hacer el cambio, aunque la información es muy técnica y está en inglés:
Suponiendo que tenemos una url del tipo anterior:
http://www.mipaginaweb.com/articulos/ver_articulo.php?id=23029
Vamos a convertirla en una de este tipo:
http://www.mipaginaweb.com/articulos/23029.html
Para ello tendremos que hacer 2 cosas:
Para ello crearemos un fichero .htaccess en el directorio /articulos/ del servidor con el siguiente contenido:
RewriteEngine on RewriteRule ^/articulos/(.+)\.html$ ver_articulo.php?id=$1
Como ejemplo, en el fichero ver_articulo.php, cuando el script imprima un enlace;
echo "<a href='http://www.mipaginaweb.com/articulos/ver_articulo.php?id=$codigo'> Articulo </a>";
Se ha de sustituir por el siguiente:
echo "<a href='http://www.mipaginaweb.com/articulos/$codigo.html'> Articulo </a>";
Esto se ha de hacer en todos los sitios donde haya enlaces con la url anterior.
¡Y eso es todo! Ya tenemos urls "spider friendly" ;-)