• Todas las URL´s generadas por Ajax contienen el parámetro #! a lo que llamaremos “URL bonita” (Pretty URL).
  • Cuando el spider del buscador se encuentre con una dirección de este tipo, sustituirá este parámetro por ?_escaped_fragment_= a lo que llamaremos “URL fea” (Ugly URL).
  • Cuando nuestra página o servidor detecte esta solicitud deberemos responder con una instantánea en html (snapshot) de cada URL con contenido Ajax y que debe coincidir con el contenido mostrado al usuario en el navegador.

Ejemplo.

  • http://www.midominio.com/#!s45fg (“URL bonita”, esta es la que aparecerá en los resultados de los buscadores)
  • http://www.midominio.com/?_escaped_fragment_=s45fg (“URL fea”, es lo que nos envía el spider para solicitarnos el snapshot)

De esta manera el rastreador puede interpretar el contenido de nuestra página Ajax y además puede indexarlo de manera correcta.

  • El contenido de estos snapshots debe coincidir con lo que se muestra en la página Ajax. Sabemos que esto se puede prestar a muchos tipos de prácticas (Cloaking), por lo que créanme que los buscadores se esfuerzan en verificar esta coincidencia.
  • Los buscadores nunca indexaran o mostraran en sus resultados páginas mostrando la URL fea, es decir, rastrearan el contenido de las URL feas pero indexaran la URL bonita.
  • La respuesta a esta URL fea puede ser una página o código generado de manera automática y temporal solo para atender la solicitud de la araña.

Lo solucionaremos con una redireccion a una pagina html estática. Podemos hacerlo de muchas formas, pero te pongo un ejemplo con tan solo dos lineas en tu .htaccess.

En el ejemplo se agrega el directorio snapshots como destino de estas páginas, tú puedes agregarlas en el directorio que mejor se acomode a tu estructura.
Es importante señalar que para que esto funcione, previamente en el .htaccess debe estar habilitado el motor de re escritura, si no lo está, debemos incluir las siguientes líneas:

De igual manera en nuestra página Ajax debemos asegurarnos de haber incluido la siguiente línea:

Esto le indica al buscador que el sitio admite el esquema de rastreo con Ajax.
Sitemap En nuestro sitemap debemos incluir la URL que queremos aparezca en los resultados de las búsquedas, es decir, debemos incluir únicamente la “URL bonita”.