Publicado el viernes 26 de febrero del 2016 por
Lino Uruñuela
El otro día, mi socio
Natzir me pasó el
tweet de John Muller donde indicaba que la directiva Disallow del robots.txt debía comenzar siempre con un slash "/".
Esto ha provocado cierto revuelo entre los SEOs, muchos de nosotros no hemos tenido nunca esta premisa en cuenta a la
hora de definir los robots.txt, y se comenta que Google ha cambiado esta directiva sin avisar, o casi sin avisar
Gracias a
Javier Lorente, en un hilo de mails enviaba
cómo era el robots.txt hace tiempo, concretamente el 6 de septiembre del 2015, podemos comprobar que no han cambiado la definición, es decir, que siempre ha sido así (también vemos
cómo era el 6 de mayo del 2012) y que Google no ha cambiado la definición en la
documentación actual, sino que nunca la tuvimos en cuenta ya que sin poner al principio el slash también nos ha funcionado.
Así que nos ponemos manos a la obra para ver exactamente cómo trata la directiva con slash al principio y sin slash tanto en la herramienta de probador de robots.txt de Google Search Console como la manera en que lo trata GoogleBot.
Para intentar tener ejemplos de distintos casos vamos a ver si funciona para
- URLs en el directorio raíz, ficheroso documentos que recaen sobre el directorio raíz
- URls dentro de un directorio, por ejemplo, desindexar un directorio
- URLs con parámetros, para saber si podemos aplicarlo independientemente de en que nivel de la url se ecuentre (para otro post)
URLs en el directorio raíz
En este caso vamos a intentar entender de manera que son tratados los documentos que cuelguen del directorio raíz.
Para este ejemplo voy a coger una web donde tengo determinados
banners indexados y que son del año catapún, así que a desindexar!!
Para probarlo pensamos añadir la siguiente línea al robots.txt y así desindexar este tipo de ficheros
Antes de subir las modificaciones lo comprobamos con la
herramienta de probador de robots.txt de Google Search Console y
contra todo pronóstico nos da que la url será bloqueada, lo cual era de esperar al añadir la línea, pero lo extraño es que se bloquea por otra línea distinta a la que hemos añadido en el robots.txt, una línea que no contiene, en principio, parte de la url a probar (yb2.swf)
Esto empieza a inquietar...
¿por qué incluye la url que queremos probar si no contiene ningún caracter común con la regla en el Disallow? (solo coincide en el punto)
Podríamos pensar que es el * en el directorio raíz, así que para asegurarnos eliminamos los asteriscos de esa línea y sorpresa!
Si no ponemos asteriscos esa misma línea también nos restringe el acceso!!
Seguimos probando otras opciones para ver qué da el fallo o qué ocurre, eliminamos el punto de esa línea y tachaaan! ya no coincide y marca otra línea distinta la que restringe el contenido.
La verdad es que mucho sentido no tiene, podría ser que la herramienta "peta" cuando le metemos algún caracter especial que se suelen usar para expresiones regulares.
También comprobamos que si seguimos las directrices tal como comenta John Muller, poniendo siempre el slash al principio todo funciona correctamente aunque tenga caracteres especiales.
Bingo!! ahora nos da como línea que restringe el contenido "Disallow:/*swf" es decir, la correcta.
URLs dentro de un directorio
Para este ejemplo voy a probar
con un site el cual no trae ninguna visita orgánica a urls bajo el
directorio /ejemplos/ pero que sí vemos que Google tiene indexadas determinadas URLs
Antes
de este post el robots.txt no impedía el acceso a este directorio,
ahora vamos a añadir esta línea para comprobar si funciona sin poner el
slash al comienzo.
La
propia herramienta de probador de robots.txt ya nos indica que será
bloqueado, eso sin haber iniciado la directiva con un slash.
Como en el caso anterior, nos dice que bloqueará cualquier url del dominio aunque no tenga ninguna coincidencia con la url que le damos a probar
Así que esperaremos unos días para confirmar si se cumple lo que dice la herramienta de probador de robots.txt y desindexa todo el domnio (creo y espero que no), o si solo desindexa ese directorio como creo que hará y sería otra
prueba que demuestra que la herramienta "peta" cuando no comienzas con slash.
Conclusión
Como conclusión en estas pruebas (a espera de resultados de los cambio que acabo de hacer en los respectivos robots.txt), es que en la herramienta de comrpobación de robots.txt de Google Search Console sí es obligatorio poner slash al principio de la directiva Disallow, mientras que para GoogleBot no hace falta, ya que si fuese igual que en la herramienta las urls con swf no deberían indexarse y vemos por el contrario como sí lo hace.
Dada la importancia de estos detalles seguiremos haciendo prubas, para comprobar realmente cómo hay que ponerlo y cómo afecta. Desde luego
mi recomendació es seguir las directrices que nos dan y comenzar siempre con un slash para evitar posibles errores o confusiones, porque además ¿que cuesta añadir un slash al comienzo? NADA
Actualización
Gracias a
Mª José Cachón que ha encontrado en la
documentación algo clave que habíamos pasado por alto y que nos dice que de no comenzar por slash (barra inclinada) se asumirá que la raíz está incluída, lo que parece que no se aplica a la herramienta de robots.txt en Google Search Console.
jacasu (@https://twitter.com/jacasu)hace Hace más de 8 años y 283 días
Hola, para googlebot creo que también hace falta creo, que lo tenga indexado no quiere decir nada ya que en el robots.txt no le indicas lo que tiene que indexar, le indicas lo que tiene que rastrear.
Un página indexada si le metes un disallow seguirá indexada, sólo que ya no la rastrea ( y en la descripción del snippet te pone algo como "la configuración no nos permite rastrear este sitio" o algo así )
un saludo
Lino Uruñuela (@wachynakygmail.com)hace Hace más de 8 años y 283 días
@Jacasu sí, como dices no quería decir indexada en su índice sino rastreada y obtener su contenido.
En el ejemplo que pongo de swf según la tool no debería rastrear y guardar caché, @errioxa y sí lo hace ;)
Alberto (@)hace Hace más de 8 años y 282 días
Gracias Lino, te dejo mi visión del cambio:
http://albertoromero.net/2015/guia-schema-organization/
Alberto (@)hace Hace más de 8 años y 282 días
Me equivoque al copiar-pegar, es este:
http://albertoromero.net/2016/cambios-uso-asteriscos-robots/