web-dev-qa-db-fra.com

Autoriser uniquement les robots Google et Bing à explorer un site

J'utilise le fichier robots.txt suivant pour un site: L'objectif est de permettre à Googlebot et à bingbot d'accéder au site à l'exception de la page /bedven/bedrijf/* et d'empêcher tous les autres robots d'explorer le site.

User-agent: googlebot
Disallow: /bedven/bedrijf/*
Crawl-delay: 10

User-agent: google
Disallow: /bedven/bedrijf/*
Crawl-delay: 10

User-agent: bingbot
Disallow: /bedven/bedrijf/*
Crawl-delay: 10

User-agent: bing
Disallow: /bedven/bedrijf/*
Crawl-delay: 10

User-agent: *
Disallow: /

La dernière règle User-agent: * Disallow: / interdit-elle à tous les robots de parcourir toutes les pages du site?

10
Konsole

Le dernier enregistrement (commencé par User-agent: *) sera suivi de tous les robots polis qui ne s’identifient pas comme "googlebot", "google", "bingbot" ou "bing".
Et oui, cela signifie qu’ils ne sont pas autorisés à ramper.

Vous voudrez peut-être omettre le * dans /bedven/bedrijf/*.
Dans la spécification originale de robots.txt, * n’a aucune signification particulière, c’est juste un caractère comme un autre. Donc, cela interdirait seulement l'exploration de pages ayant littéralement le caractère * dans leur URL.
Bien que Google ne suive pas la spécification robots.txt à cet égard, car ils utilisent * comme caractère générique pour "toute séquence de caractères", c'est non nécessaire pour les dans ce cas: /bedven/bedrijf/* et /bedven/bedrijf/ signifieraient exactement la même chose: bloquer toutes les URL dont le chemin commence par /bedven/bedrijf/.

Et enfin, vous pourriez réduire votre fichier robots.txt à deux enregistrements, car un enregistrement peut avoir plusieurs lignes User-agent _ :

User-agent: googlebot
User-agent: google
User-agent: bingbot
User-agent: bing
Disallow: /bedven/bedrijf/
Crawl-delay: 10

User-agent: *
Disallow: /
24
unor