web-dev-qa-db-fra.com

Qu'est-ce qu'un bon fichier robots.txt?

Quelle est la "meilleure" configuration pour robots.txt?
J'utilise la structure permanente suivante /%category%/%postname%/.

Mon robots.txt ressemble actuellement à ceci (copié d'il y a longtemps):

User-agent: *
Disallow: /cgi-bin
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /trackback
Disallow: /comments
Disallow: /category/*/*
Disallow: */trackback
Disallow: */comments
  1. Je veux que mes commentaires soient indexés. Donc je peux enlever ça
  2. Est-ce que je veux interdire les catégories d'indexation à cause de ma structure de lien permanent?
  3. Un article peut avoir plusieurs tags et être dans plusieurs catégories. Cela peut entraîner des doublons dans les moteurs de recherche tels que Google. Comment devrais-je travailler autour de cela?

Souhaitez-vous changer quelque chose d'autre ici?

7
Steven

FWIW, les URL de rétroliens émettent des redirections et n'ont pas de contenu, elles ne seront donc pas indexées.

Et au risque de ne pas répondre à la question, RE vos points 2 et 3:

http://googlewebmastercentral.blogspot.com/2008/09/demystifying-duplicate-content-penalty.html

Autrement dit, je pense que vous perdez votre temps à vous préoccuper du contenu dupliqué, et votre fichier robots.txt devrait se limiter à:

User-agent: *
Disallow: /cgi-bin
Disallow: /wp-admin
Disallow: /wp-content/cache
3
Denis de Bernardy

Beaucoup de temps depuis cette question et réponse ont été postés. Depuis lors, les choses ont beaucoup changé. La recommandation typique sur l'interdiction aux robots d'exploration d'accéder à wp-content/themes, wp-content/plugins, wp-content/cache, wp-includes et à tout autre répertoire contenant des fichiers CSS ou js nécessaires sur le site n'est plus valide.

Par exemple, parlons de Google. Googlebot rendait des sites Web sans CSS et sans js, mais pas réellement. En réalité, Googlebot vérifie l'intégralité du document et vérifie la réactivité, le nombre, l'emplacement et la taille des scripts, etc. Google n'aime donc pas que vous interdisiez à Googlebot d'accéder aux fichiers CSS et js. Cela signifie que vous ne devez pas interdire wp-content/themes, wp-content/plugins, wp-content/cache et wp-includes car tous ces dossiers peuvent contenir des fichiers CSS et js.

De mon point de vue, le meilleur fichier robots.txt est celui créé par défaut par WordPress ( le fichier robots.txt ci-dessous est celui par défaut depuis WP 4.0 ):

User-agent: *
Disallow: /wp-admin/

Si vous avez un dossier cgi-bin, il peut être judicieux de ne pas autoriser le dossier cgi-bin:

User-agent: *
Disallow: /wp-admin/
Disallow: /cgi-bin/

Et si vous utilisez un sitemap, il est judicieux d'inclure une référence de sitemap dans le fichier robots.txt (vous devez toujours soumettre manuellement le sitemap à Google et à Bing Webmaster Tools, mais cette référence peut être utile à d'autres robots d'exploration):

User-agent: *
Disallow: /wp-admin/
Disallow: /cgi-bin/

Sitemap: http://example.com/sitemap.xml

C'est en général. Il peut être nécessaire d’interdire d’autres dossiers et fichiers à étudier sur des sites Web spécifiques dans chaque cas particulier. Par exemple, vous aurez peut-être besoin ou vous voudrez peut-être interdire un dossier de plug-in spécifique:

User-agent: *
Disallow: /wp-admin/
Disallow: /wp-content/plugins/plugin-folder/

Pour modifier le fichier robots.txt, utilisez le filtre robots_txt (utiliser un vrai fichier robots.txt empêchera WordPress de gérer le fichier robots.txt). Par exemple:

add_filter( 'robots_txt', function( $output ) {

    $output .= "Disallow: /cgi-bin/\n";
    $output .= "Disallow: /wp-content/plugins/plugin-folder-i-want-to-block/\n";
    $output .= "\nSitemap: " . site_url( 'sitemap.xml' ) . "\n";

    return $output;

});
4
cybmeta

Avez-vous regardé le plugin Yoast WordPress SEO ? Il gère définitivement les problèmes de robots.txt.

2
ZaMoose

Avec un peu d'aide, c'est maintenant une mine (pas trop différente de tout le monde, apparemment)

User-agent: *
    Allow: /

Disallow: /wp-content/
    Disallow: /wp-admin/
    Disallow: /cat/
    Disallow: /key/
    Disallow: /*?
    Disallow: /*.js$
    Disallow: /*.inc$
    Disallow: /*.css$
    Disallow: /cgi-bin
    Disallow: /wp-admin
    Disallow: /wp-includes
    Disallow: /wp-content/plugins
    Disallow: /wp-content/cache
    Disallow: /wp-content/themes

User-agent: Mediapartners-Google
    Allow: /

User-agent: Adsbot-Google
    Allow: /

User-agent: Googlebot-Image
    Allow: /

User-agent: Googlebot-Mobile
    Allow: /

#User-agent: ia_archiver-web.archive.org
    #Disallow: /

Sitemap: YOURSITENAME.HERE
2
Cardin

Vous devez suivre l’approche actuelle de Joost de Valk / où très peu de choses sont bloquées dans robots.txt, mais vous devez aussi comprendre que chaque site aura une politique particulièrement appropriée qui devra être revue et modifiée au fil du temps.

La plupart des réponses données précédemment sont anciennes et entraîneront un auto-sabotage SEO, car Google vérifie actuellement la "convivialité mobile". Aujourd'hui, googlebots essaie de charger tout ce qu'un navigateur normal fait, y compris les polices, images, JavaScript et les éléments CSS de/wp-content,/themes,/plugins, etc. (Morten Rand-Hendriksen a récemment publié un blog à ce sujet .)

Vous pouvez utiliser le vérificateur de site "mobile friendly" de Google pour savoir si votre fichier robots.txt sabote votre site. Si vous utilisez Google Webmaster Tools, vous devriez recevoir des alertes et des notifications par courrier électronique en cas de problème grave.

Sauf si vous veillez à ne pas charger d'actifs de présentation ou d'interaction clés à partir de dossiers non autorisés, il s'agit probablement du minimum nécessaire à l'installation de WordPress:

User-agent: *
Disallow: /wp-admin

Et n'oubliez pas d'ajouter un plan du site:

Sitemap: http://yoursite.com/sitemap.xml

Malheureusement, cette politique plus ouverte recrée aujourd'hui le potentiel d'autres problèmes qui, auparavant, poussaient les gens à être plus restrictifs avec robots.txt, tels que [les développeurs de plug-ins et de thèmes incluant des pages indexables avec des liens vers leurs propres sites] . 4 Il n'y a rien Cela doit être fait à moins que vous ne puissiez explorer tous les codes tiers avec un peigne fin et déplacer ou supprimer des éléments que vous ne souhaitez pas indexer.

1
Dan Knauss

Pour votre information, commencez toujours votre lien permanent par un numéro. Par expérience, il accélère la page, car WordPress permet de différencier rapidement une page d'un message (je l'ai également lu ailleurs, puis essayé .. et c'est vrai). alors http:example.com/%month%/%post%... ira bien

Je vais simplement copier ce que j'ai. Beaucoup de recherches ont été menées dans ce domaine. C'est probablement exagéré! Cela aide Google à reconnaître quels sont les principaux mots clés de votre site, tels qu'ils apparaissent dans l'outil Google pour les webmasters. J'espère que ça aide

User-agent: *
Allow: /
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /cgi-bin/
Sitemap: Url to sitemap1
Sitemap: Url to sitemap2

User-agent: Googlebot
# disallow all files ending with these extensions
Disallow: /*.js$
Disallow: /*.inc$
Disallow: /*.css$
Disallow: /*.cgi$
Disallow: /*.wmv$
Disallow: /*.ico$
Disallow: /*.opml$
Disallow: /*.shtml$
Disallow: /*.jpg$
Disallow: /*.cgi$
Disallow: /*.xhtml$
Disallow: /wp-*
Allow: /wp-content/uploads/ 

# allow google image bot to search all images
User-agent: Googlebot-Image
Allow: /*

User-agent:  *
Disallow: /about/
Disallow: /contact-us/
Disallow: /wp-admin/
Disallow: /wp-includes/
Disallow: /wp-

# disallow archiving site
User-agent: ia_archiver
Disallow: /

# disable duggmirror
User-agent: duggmirror
Disallow: /

User-agent: Googlebot
Disallow: /*.js$
Disallow: /*.inc$
Disallow: /*.css$
Disallow: /*.wmv$
Disallow: /*.cgi$
Disallow: /*.xhtml$

# Google AdSense
User-agent: Mediapartners-Google*
Disallow:
Allow: /*
0
Tech Joe