En esta nueva entrada vamos a ver qué es el fichero robots.txt, dónde se ubica y cuáles son los comandos de este imprescindible archivo que en toda web debe existir.
Veamos una imagen de ejemplo:
Otros post interesantes:
- 15 comandos de búsqueda SEO de Google que debes conocer
- Redirect 301 en .htaccess con ‘redirect 301’ y ‘redirectmatch 301’
- Repaso al atributo rel nofollow de los enlaces href salientes de una web
¿Qué es el fichero robots.txt?
Es un archivo de texto plano, sin formato que podemos editar con cualquier editor de texto plano (Word y similares NO). Documentación oficial.
Su finalidad es la de establecer a los rastreadores (bots/buscadores) que URLs de una página web deben rastrear o no.
Es muy útil para la optimización SEO y aunque las páginas que impidamos rastrear no saldrán en los resultados de búsqueda (por ejemplo en Google) cabe aclarar estos puntos:
- Debemos usar esta funcionalidad para evitar que Google rastree urls innecesarias con contenido irrelevante o contenido duplicado que podemos tener en varias urls (listados…).
- Cuando nos referimos a URL no solo lo hacemos en cuando a direcciones web, si no que también los ficheros de una web como pueden ser, imágenes (jpg, gif, png, webp…), CSS, JS y similares.
- No debemos poner urls privadas como pueden ser el gestor de una web, ya que la lectura del robots.txt es pública y podría dar pistas a hackers y similares.
- Si queremos no indexar gran número de contenido debemos usar la meta etiqueta noindex:
1<meta name="robots" content="noindex" />
¿Dónde se ubica?
El robots.txt lo tenemos que ubicar siempre en la raíz de la web, y se debe de llamar igual, por ejemplo –> www.anerbarrena.com/robots.txt
Si tu web tiene subdominios debes poner un robots.txt en cada subdominio.
Comandos y directrices del robots.txt
Veamos los diferentes comandos que tenemos en la sintaxis:
- Los comentarios se realizan con el caracter ‘#’:
1#Esto es un comentario - Definir reglas según el user agent, dependiendo el robot que rastree nuestra web podemos definir unas reglas específicas para cada uno:
12345678910111213141516#Ejemplo 1 todos los robots no deben rastrear nada de la webUser-agent: *Disallow: /#Ejemplo 2 en robot de Google no debe rastrear nada de la webUser-agent: GooglebotDisallow: /#Ejemplo 3 en robot de Bing no debe rastrear nada de la webUser-agent: BingDisallow: /#Ejemplo 4 los robost de Bing y Google no deben rastrear nada de la webUser-agent: BingUser-agent: GooglebotDisallow: / - En cada especificación debemos tener al menos un comando Disallow o Allow en el robots.txt para bloquear y permitir rastreos
- Disallow: Especificamos al user‑agent (rastreador/bot/robot) que URLs no debe rastrear. Vemos varios ejemplos:
1234567891011#Ejemplo 1 para impedir que no se rastree nada el bot de GoogleUser-agent: GooglebotDisallow: /#Ejemplo 2 para impedir que ningún robot rastree nada de directorio 'comisiones'User-agent: *Disallow: /comisiones/#Ejemplo 3 para impedir que el bot de Google no rastree la URL indicada 'facturas.html'User-agent: GooglebotDisallow: /facturas.html - Allow: Por defecto no debe ponerse esta directriz ya que los rastreadores si no se indica lo contrario van a rastrear todas las URLs que encuentren en una web. Anula la directriz Disallow e indica que URLs anteriormente bloqueadas se den rastrear. Ejemplos:
1234#Ejemplo para impedir que ningún robot rastree nada de directorio 'comisiones' excepto la url indicada con AllowUser-agent: *Disallow: /comisiones/Allow: /comisiones/validadas.html - Sitemap: Nos es obligatoria su inclusión pero sirve para indicar a los robots donde tenemos ubicados los sitemaps de nuestra web, ejemplo:
1Sitemap: https://www.miweb.com/sitemap.xml
Podéis visitar este post para más info: Cómo referenciar un sitemap en el robots.txt - Comodines: Con estos (‘*’, ‘?’ y ‘$’) podemos realizar patrones para el rastreo de URL:
1234567891011#Ejemplo para evitar el rastreo de las imágenes gif de una webUser-agent: *Disallow: /*.gif$#Ejemplo para evitar el rastreo de los directorios y subdirectorios que comienzan con 'listado'User-agent: *Disallow: /listado*/#Ejemplo para evitar el rastreo de los directorios que terminan con 'listado'User-agent: *Disallow: /*listado/$ - Craw-delay: Especifica el número de segundos para realizar el siguiente rastreo de URL de una web:
123#Ejemplo para que el rastredor vaya rastreando cada 5 segundos una nueva URLUser-agent: *Craw-delay: 5 - Probador de robots.txt: Para comprobar que lo realizado es correcto disponemos del probador en la Search Console de Google.