web-dev-qa-db-de.com

Was ist eine gute robots.txt?

Was ist das "beste" Setup für robots.txt?
Ich verwende die folgende Permalink-Struktur /%category%/%postname%/.

Mein robots.txt sieht derzeit so aus (kopiert von irgendwo vor langer Zeit):

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. Ich möchte, dass meine Kommentare indexiert werden. Also kann ich das entfernen
  2. Möchte ich die Indizierung von Kategorien aufgrund meiner Permalink-Struktur nicht zulassen?
  3. Ein Artikel kann mehrere Tags haben und mehreren Kategorien angehören. Dies kann zu Duplikaten bei Suchanbietern wie Google führen. Wie soll ich das umgehen?

Würden Sie hier noch etwas ändern?

7
Steven

FWIW, Trackback-URLs geben Weiterleitungen aus und haben keinen Inhalt, sodass sie nicht indiziert werden.

Und auf die Gefahr hin, die Frage nicht zu beantworten, wiederholen Sie Ihre Punkte 2 und 3:

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

Anders ausgedrückt, ich denke, Sie verschwenden Ihre Zeit damit, sich Gedanken über Dup-Inhalte zu machen, und Ihre robots.txt sollte auf Folgendes beschränkt sein:

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

Viel Zeit, seit diese Frage und Antwort gepostet wurden. Seitdem hat sich vieles verändert. Die typische Empfehlung, Crawlern den Zugriff auf wp-content/themes, wp-content/plugins, wp-content/cache, wp-includes und alle anderen Verzeichnisse zu verweigern, die auf der Site benötigte CSS- oder JS-Dateien enthalten, ist nicht mehr gültig.

Lassen Sie uns zum Beispiel über Google sprechen. Googlebot lieferte Websites ohne CSS und ohne js, aber nicht wirklich. Eigentlich fecth Googlebot das gesamte Dokument und prüft Dinge wie Reaktionsfähigkeit, Anzahl, Speicherort und Größe der Skripte, etc. Google mag es also nicht, wenn Sie Googlebot nicht erlauben, auf CSS- und JS-Dateien zuzugreifen. Das bedeutet, dass Sie wp-content/themes, wp-content/plugins, wp-content/cache und wp-includes nicht verbieten sollten, da all diese Ordner CSS- und js-Dateien bedienen können.

Aus meiner Sicht ist die beste robots.txt-Datei diejenige, die standardmäßig von WordPress erstellt wurde ( die folgende robots.txt-Datei ist die Standarddatei seit WP 4.0 ):

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

Wenn Sie einen cgi-bin-Ordner haben, ist es möglicherweise ratsam, den cgi-bin-Ordner nicht zuzulassen:

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

Wenn Sie eine Sitemap verwenden, ist es eine gute Idee, eine Sitemap-Referenz in robots.txt aufzunehmen (Sie müssen die Sitemap noch manuell an Google und Bing Webmaster Tools senden, aber die Referenz kann für andere Crawler nützlich sein):

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

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

Das ist im Allgemeinen so. Bestimmte Websites müssen möglicherweise andere Ordner und Dateien nicht zulassen, die in jedem bestimmten Fall untersucht werden sollten. Beispielsweise benötigen Sie möglicherweise oder möchten möglicherweise einen bestimmten Plug-in-Ordner nicht zulassen:

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

Verwenden Sie zum Ändern der robots.txt den robots_txt-Filter (wenn Sie eine echte robots.txt-Datei verwenden, kann WordPress die robots.txt-Datei nicht mehr verarbeiten). Zum Beispiel:

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

Hast du dir Yoasts WordPress SEO Plugin angesehen? Es behandelt definitiv Probleme mit robots.txt.

2
ZaMoose

Mit ein bisschen Hilfe handelt es sich jetzt um Minen (anscheinend nicht viel anders als alle anderen)

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

Sie sollten Joost de Valks derzeitiger Ansatz bei dem nur sehr wenig in robots.txt blockiert ist, aber auch verstehen, dass jede Site über eine einzigartig geeignete Richtlinie verfügt, die im Laufe der Zeit überprüft und geändert werden muss.

Viele der Antworten, die hier zuvor gegeben wurden, sind veraltet und führen zu SEO-Selbstsabotage, da Google jetzt nach "Handyfreundlichkeit" sucht. Heute versuchen Googlebots, alles zu laden, was ein normaler Browser tut, einschließlich Schriftarten, Bildern, JavaScript und CSS-Assets aus/wp-content,/themes,/plugins usw. (Morten Rand-Hendriksen hat kürzlich darüber gebloggt .)

Sie können Googles "mobile friendly" Site Checker verwenden, um herauszufinden, ob Ihre robots.txt -Datei Ihre Site sabotiert. Wenn Sie Google Webmaster-Tools verwenden, sollten Sie Benachrichtigungen und E-Mail-Benachrichtigungen erhalten, wenn ein großes Problem auftritt.

Wenn Sie nicht darauf achten, dass keine wichtigen Präsentations- oder interaktiven Elemente aus nicht zulässigen Ordnern geladen werden, ist dies wahrscheinlich das absolute Minimum, mit dem jede WordPress-Installation sicher ist:

User-agent: *
Disallow: /wp-admin

Und vergessen Sie nicht, eine Sitemap hinzuzufügen:

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

Leider schafft diese offenere Politik heute das Potenzial für andere Probleme, die früher dazu geführt haben, dass die Leute mit robots.txt restriktiver umgehen mussten, wie [Plugin- und Theme-Entwickler einschließlich indexierbarer Seiten mit Links zu ihren eigenen Sites] . 4 Es gibt nichts Dies ist nur möglich, wenn Sie in der Lage sind, den gesamten Code von Drittanbietern mit einem feinen Zahnkamm zu durchforsten und Dinge zu bewegen oder zu entfernen, die nicht indiziert werden sollen.

1
Dan Knauss

FYI, ALWYAS beginne deinen Permalink mit einer Zahl. Erfahrungsgemäß beschleunigt es die Seite, weil WordPress schnell zwischen einer Seite und einem Beitrag unterscheiden kann (ich habe auch gelesen, dass es irgendwo anders ausprobiert wurde ... und es ist wahr). also http:example.com/%month%/%post%... wird gut

Ich werde nur kopieren, was ich habe. Hier wurde viel recherchiert. Es ist wahrscheinlich übertrieben! Es hilft Google dabei, die Hauptschlüsselwörter Ihrer Website zu erkennen, die im Google Webmaster-Tool angezeigt werden. Ich hoffe es hilft

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