Google recomienda eo el sitemap (por ejemplo en formato xml) para
hacer un mejor rastreo de la informaciónque compone nuestros sitios web. Esto teóricamente les facilita bastante la vida por el hecho de que “guía” a sus
arañas o robotsrastreadores hasta el contenido relevante en un tiempo más reducido que si únicamente prosiguiesen enlaces o si tuviesen que determinar de forma autónoma qué contenido no debe ser indizado. Hasta aquí todo bien.
En la práctica lo cierto es que
no es extraño encontrarse con Google saltándose a la torera el contenido de un archivo robots.txt, indexando páginas y archivos en él contenidos, de exactamente la misma forma que son ignoradas de forma casi azarosa las metaetiquetas robots que incluimos en el código de nuestras páginas. No siempre, pero más frecuentemente de lo que debería (que debería ser “nunca”). Dicho esto, habrá que conformarse con las herramientas que tenemos y aprender a manejarlas mejor.
Y es que a veces
se configura incorrectamente el fichero robotsporque damos por supuestas algunas cosas, esperamos que con este artículo se aclaren ciertos conceptos importantes que frecuentemente afectan al tratamiento que Google hace de nuestros sitios. Empezaremos por lo más sencillo…
El conocido “robots” es un archivo en formato .TXT que
podemos crear y editar con un simple bloc de notas o bien editor de textobásico (wordpad, notepad). Una vez creado habrá que darle ese nombre concreto (robots.txt) y colgarlo en el directorio raíz de nuestro sitio web, ya que es el único sitio donde lo podrán localizar sin inconvenientes los buscadores web. La
configuración básica del ficheros robotses bastante sencilla, incluye únicamente dos parámetros: el robot al que nos dirigimos, y una instrucción dándole o bien quitándole permiso para indexar algo (un fichero, una carpeta, todo, nada).
En otras palabras, se trata de decirle a cada Bot (una especie de rastreadores – arañas – que Google tiene bullendo por los millones de páginas web que existen para estar al día de su contenido y poder mostrarlo apropiadamente en los resultados de búsqueda) a qué información de manera expresa puede (o NO puede) acceder para leer e indexar dicha información. Ni que decir debe, por defecto, si no se le afirma nada Google devorará toda la información a su paso y la incluirá en su mastodóntico índice de contenidos web.
Un
ejemplo fácil y básicodel contenido de un archivo robots.txt sería el siguiente:
Como puede apreciarse, primero se define el “user-agent” o bien Bot al que se dirige la orden (bien el de Google web search, o Google Images, o Bing…) y después qué páginas han de ser ignoradas (con el comando
Disallow) o bien explícitamente indizadas (
Allow). En un caso así se dice que para todos y cada uno de los robots (con un asterisco) deberán ignorarse -no indexarse- todas las páginas (con la barra “del siete”, así sin nada más detrás, le hacemos ver que es una orden para todo el directorio raíz).
Con este caso le vamos a estar diciendo al robot de
Bingque no rastree nada de nuestro lugar. Por omisión, el resto de robots incluido el de Google podrán rastrear y también indexar todo el contenido de nuestro sitio.
Un pasito más: le hemos dicho a
Bingque no indexe la carpetita “documentos”. En un caso así
Googleindexará por omisión todo el contenido del sitio, estrategia social media baleares Bing indexará todo salvo el contenido de la carpetita “documentos”. De esta forma queda claro que, para
definir una carpeta en el robots, hay que colocar (tras la barra inicial que irá siempre) su nombre más una barra adicional al final.
Con este robots.txt estamos diciéndole a todos los robots que no indexen 3
páginas en concreto: “pagina1.html”, “pagina2.php” y “pagina3.html” que se encuentra en la carpeta documentos.
Hemos introducido el comando “
Allow” cuya función es la inversa al “Disallow” pero hemos quitado la barra “/” siguiente, así que le decimos que
SÍ puede indexar NADA. A primer aspecto parece que esto debería marchar precisamente igual que un “Disallow: /” impidiendo la indexación del sitio web al completo, pero en realidad no es así.
Estamos ante
uno de los fallos más susceptibles de ser cometidosa la hora de configurar el fichero robots, por el hecho de que hay que tomar en consideración ciertas consideraciones esenciales en relación al
comando “Allow”que es bastante puñetero:
Hasta aquí parece fácil mas con el trastear continuo en el tiempo te van haciendo falta nuevas configuraciones y empiezan a surgir las dudas,
¿qué se puede hacer con el fichero robots?. Ahí van algunas dudas que me ha tocado probar, bien en primera persona o a través de preguntas frecuentes con las que me he encontrado de compañeros del marketing online:
A menudo sucede, en especial en sitios montados sobre plataformas como
WordPress, que puede haber una página en nuestro sitio con esta estructura en su URL: “
midominio.com/servicios/“. En este caso dicha URL es una página donde se muestran los servicios de una empresa, si bien posiblemente por debajo de ella existan páginas del tipo “
midominio.com/servicios/nombre-servicio1” o bien similar. Pero ¿cómo le afirmamos al robots
que excluya únicamente la página superior, sin que por este motivo “cape” todas las que están por debajo? La tentación sería:
Pero como ya hemos dicho, en este caso el robot entenderá que la orden afecta a
toda esa carpetita o directorio. Pero no es eso lo que queremos! Para decirle a los robots que sólo nos referimos a esa página específica, deberemos emplear el
operador dólar (“< por ciento -body() por ciento >#8221;)que sirve para detallar el
final de la URL. Así:
De esta forma le afirmamos al robot que
no indexe las URLs que terminen precisamente de esa forma, siendo la única URL de ese tipo la que queremos desindexar precisamente. Y esto nos lleva al empleo de expresiones regulares en robots.txt…
Aunque el ejemplo precedente nos sirve para explicar el empleo del “< por ciento -body() por ciento >#8221; en el robots, la verdad es que para sacarle el mayor jugo debe
emplearse al lado del asterisco“*”. Este último funciona como un
comodín, sirve para decir “sustituyo a cualesquiera cosa que pueda ir en mi lugar”. Mejor verlo con un ejemplo:
Ya hemos explicado que el dólar sirve para decirle que ahí acaba la URL, que no puede llevar nada más por detrás aquello que deseemos aplicarle el “allow” o bien el “disallow”.
En el caso del asterisco le decimos que
puede reemplazarlo con lo que quiera, siempre que vaya seguido de “.htm”. Esto es, puede haber múltiples niveles de carpetita por medio (por ejemplo “
/carpeta/subcarpeta/pagina.htm” también sería excluído).
De esta forma en el ejemplo le decimos a todos y cada uno de los robots que no indexen ningún fichero .
HTMsi bien les dejamos, a través del dólar, que indexen por ejemplo todos y cada uno de los archivos con extensión .
HTML. Esto nos lleva a otra cuestión recurrente…
A menudo nuestro Content Management System nos produce
rutas con parámetroscomo “
midominio.com/index.php?user=1” que deseamos no sean indizadas al poder incurrir en duplicidad de contenidos. Siguiendo el patrón anterior y a sabiendas de que los parámetros vienen precedidos de una interrogación, habría que aplicar algo como esto:
Así le decimos que no indexe todo lo que comience por “lo que sea” pero que entonces tenga una interrogación, seguido de lo que sea. Seguro que alguno se ha perdido en este último paso, que tendría la tentación de haber puesto “Disallow: /*?*” para cerciorarse de que después de la interrogación va algo más, los parámetros. Pues no, resulta que
este tipo de expresiones regulares suponen por defecto que, tras lo que le decimos, puede ir cualquier cosa. Por eso cuando decimos “Disallow: /servicios/” el robot comprende que todo cuanto vaya por detrás (ej: /servicios/auditoria) tampoco lo indexará, porque responde al patrón definido.
Pero cuidado porque esto es muy peligroso!! Un caso lo tenemos a continuación:
Pongamos que existe una página que no queremos indexar cuya URL es precisamente ésta: “/servicio”. Podríamos caer en el que posiblemente sea
el mayor error cometido con el uso del fichero robots.txta nivel mundial! :O
Algún listo dirá:
Así no, eso sirve para capar la carpeta “servicio” entera.
Pues tampoco exactamente. En realidad, como ya hemos explicado antes,
el robot va a comprender que detrás de eso puede ir cualquier cosa, esto es, va a excluir páginas como:
Entonces,
¿cómo excluyo esa página que no tiene extensión?Así:
De esta forma delimitamos dónde termina la URL, eludiendo este
super-inconveniente que generalmente se pasa por altoal formular los archivos robots.
Esto ha quedado explicado con el punto anterior: si no se pone barra, el robots estará excluyendo todo cuanto empiece de esa forma, corresponda concretamente o bien no a dicho subdirectorio.
Así es. De hecho su
combinaciónpuede ser una forma de definir mejor qué cosas se deben indexar y cuáles no para una determinada carpeta (o bien para todo el lugar). Un ejemplo…
De esta forma le estaríamos diciendo que
SÍ indexela página general de servicios (“midominio.com/servicios/”) mas
NO indexelas páginas consecutivas con los servicios específicos (“midominio.com/servicios/auditoria”+”midominio.com/servicios/consultoria”+etc.).
Lo ideal es
usar primero el “Allow” que no es restrictivo(por defecto se comprende como tolerado indexar todo), para más tarde incluir el “Disallow”. De esta manera se facilita el trabajo a los robots más “torpes”.
Hay que tener en cuenta que
se distingue entre mayúsculas y minúsculas, en un caso así no sirve usar siempre y en todo momento minúsculas. O sea, un comando tipo “Disallow: /pagina.html” sí permitiría que se indexase la página “
midominio.com/Pagina.html“.
A pesar de que
WordPress es una plataforma muy extendiday Google cada vez comprende mejor qué tiene que indexar y qué no, en la práctica siempre y en toda circunstancia se cuelan cosas que “empañan” la calidad de la información indexada de nuestro sitio. Puesto que la estructura de WP es común a todas las instalaciones, puede definirse un
robots tipo para WordPresscon las carpetitas donde el buscador no debería meter las narices. Téngase en cuenta que esto son unos mínimos, a nada que tiremos de plantillas, plugins y personalizaciones, habrá otras nuevas carpetas que deberemos “capar”:
Así se excluye la posible
indexación de carpetitas de sistema y archivoscon extensiones que no interesa indexar. Manéjese con cuidado. De hecho lo MUY aconsejable es
que cada uno personalice su fichero robots.txten función del contenido y configuración de su sitio, ya sea bajo un CMS de código abierto como WordPress o bien cualquier otra plataforma.
Recordar que
además del robots.txtes posible detallar la conveniencia o bien no de indexar una página a través de la
meta-etiqueta “robots”que puede ser incluida a nivel individual para cada una de las páginas del lugar. Sencillamente se trataría de incluir algo afín a esto en el
<head>para cada caso:
<meta name=”robots” content=”noindex”>
Como por defecto todo es indexable, la etiqueta tiene más sentido cuando usamos el comando
“noindex”, a pesar de que también se puede precisar “index”.
En cuanto al
sitemap, 2 consideraciones:
Como ya se ha dejado entrever ya antes,
existen diferentes Bots/ Robots / Crawlers / Arañas que se pasan las horas fallecidas dando vueltas por la red de redes tragando información como locos. Por ser prácticos y puesto que
Googlese lleva como un noventa y siete por ciento de las búsquedas estatales, vamos a precisar losy para qué sirven:
User-agent: GooglebotDisallow: /User-agent: Googlebot-NewsDisallow:
User-agent: Googlebot-ImageDisallow: /fotos-verano/
User-agent: GooglebotDisallow: /User-agent: Mediapartners-GoogleDisallow:
Tan esencial como lograr un alto ritmo de indexación, con los robots de Google visitando recurrentemente nuestros sitios más actualizados, será procurar que no se indexe información privada o bien contenido que pueda considerarse duplicado, entre otros muchos casos. Así que habrá que preocuparse en configurar el fichero robots.txt, las “meta robots” si fuera preciso, comunicarse con Google a través de Google Webmaster Tools, y todo cuanto está en nuestras manos. A partir de ahí toca orar! XD