Google a publié une série de posts sur son blog pour webmasters au sujet du fichier robots.txt : proposition de standard du protocole auprès de l'IETF, diffusion de ses outils en open source et arrêt de la prise en compte de certaines directives à l'automne prochain...

Le fichier robots.txt, basé sur le Robots Exclusion Protocol (REP), a été conçu par le webmaster Martijn Koster en 1994, aidé par d'autres éditeurs dont les sites avaient été envahis par des robots "aspirateurs" de données. Depuis cette date, il n'avait pas réellement évolué et n'avait surtout jamais fait l'objet d'un standard officiel du Web, ce qui a amené des interprétations diverses de la part d'éditeurs et de moteurs. Certains outils de recherche, et Google le premier, ont également ajouté des fonctionnalités de façon plus ou moins officieuse (comme le Allow: et bien d'autres possibilités).

Google a alors publié hier un billet sur son blog pour webmasters, expliquant qu'avec l'aide du rédacteur initial de ce protocole, des webmasters et d'autres moteurs de recherche, ils avaient documenté la façon dont le REP est utilisé sur le Web et l'avaient soumis à l'IETF (Internet Engineering Task Force).

Parmi les propositions faites à ce niveau, on peut identifier celles-ci :

  • Tout protocole de transfert peut utiliser robots.txt. Par exemple, il ne serait plus limité à HTTP(S) et pourrait également être utilisé pour FTP ou CoAP.
  • Les développeurs doivent analyser au moins les 500 premiers kilooctets (en fait, kibioctets) d'un fichier robots.txt. La définition d'une taille de fichier maximale garantit que les connexions ne sont pas ouvertes trop longtemps, ce qui réduit la charge inutile sur les serveurs.
  • Un nouveau temps maximum de mise en cache de 24 heures ou une valeur de directive de cache si disponible, donne aux propriétaires de sites web la flexibilité de mettre à jour leur fichier robots.txt quand ils le souhaitent, les robots ne surchargeant pas les sites avec les requêtes robots.txt. Par exemple, dans le cas de HTTP, les en-têtes Cache-Control pourraient être utilisés pour déterminer le temps de mise en cache.
  • La spécification prévoit maintenant que lorsqu'un fichier robots.txt auparavant accessible devient inaccessible en raison d'une panne de serveur par exemple, les pages interdites au crawl et connues ne sont pas explorées pendant une période de temps "raisonnablement longue".
  • Des propositions ont également été faites pour uniformiser la syntaxe des directives proposées dans le fichier, un domaine qui a évolué dans le temps et qui peut donner suite à plusieurs interprétations parfois.

Le document sera maintenant débattu au sein de l'IETF pour suite à donner éventuelle quant à l'évolution du REP. La suite donc au prochain épisode (cela signifie donc que les changements proposés ne sont pas encore effectifs).

Dans ce cadre, Google a également indiqué qu'il proposait dorénavant en open source l'outil qu'il utilise (librairie C++) pour lire et analyser les fichiers robots.txt des sites web, à l'attention des développeurs qui désireraient l'utiliser et/ou le tester.

Toujours dans cette même veine d'annonces autour du fichier robots.txt, Google a annoncé que certaines directives ne seraient plus prises en compte à partir du 1er septembre prochain : Crawl-delay:, Nofollow: (de toutes façons déjà pas prises en compte par le moteur) et Noindex:, une directive qui était prise en compte par Google mais sans garantie de pérennité, et dont l'usage était donc non recommandé, comme nous l'avions déjà indiqué sur Abondance en novembre 2007, en février 2017 et en avril 2019. La pérennité n'était pas garantie, elle cessera donc officiellement pour cette directive le 1er septembre prochain. Pensez donc à modifier vos fichiers robots.txt si vous l'utilisez !

Rappelons également que la directive Crawl-delay:, par exemple, est en revanche prise en considération par le moteur Bing, qui ne s'est pas encore, semble-t-il, exprimé sur la question (ce qui, n'en doutons, pas, ne saurait tarder)…

<em>Illustration Google sur son blog pour webmasters</em>. Source : <a rel="noreferrer noopener" href="https://webmasters.googleblog.com/2019/07/repp-oss.html" target="_blank">Google</a>