Identifizierung und Blockierung ressourcenintensiver Googlebot-Anfragen

Das Blockieren ressourcenintensiver Googlebot-Anfragen umfasst die Identifizierung spezifischer URLs oder Dateimuster, die übermäßig viel Server-CPU und Arbeitsspeicher verbrauchen, und anschließend die Verwendung von robots.txt-Direktiven oder HTTP-Statuscodes zur Zugriffssteuerung. Dieser Prozess stellt sicher, dass Ihr Server stabil bleibt, während der Crawler Ihre wertvollsten Inhalte finden kann. Durch die Überwachung von Server-Logs und der Search Console können Sie Skripte oder große Dateien genau bestimmen, die den Crawling-Prozess verlangsamen und Ihre Seitengeschwindigkeit beeinträchtigen.

Was zeichnet eine ressourcenintensive Anfrage aus?

Eine ressourcenintensive Anfrage tritt auf, wenn ein Crawler eine Seite besucht, deren Verarbeitung erheblichen Serveraufwand erfordert. Dies geschieht häufig bei dynamischen URLs, die Inhalte spontan generieren. Beispielsweise könnte eine Suchergebnisseite auf einer E-Commerce-Website bei jedem Besuch des Googlebot komplexe Datenbankabfragen auslösen. Diese Anfragen verbrauchen mehr RAM und CPU als eine einfache statische HTML-Datei.

Identifizierung und Blockierung ressourcenintensiver Googlebot-Anfragen

Große Mediendateien und nicht optimierte Skripte fallen ebenfalls in diese Kategorie. Wenn der Googlebot versucht, Hunderte von hochauflösenden Bildern oder großen PDF-Dokumenten in einem kurzen Zeitfenster abzurufen, steigt die Serverlast sprunghaft an. Dieses Verhalten kann die Website für echte menschliche Nutzer verlangsamen. Die Identifizierung dieser Muster ist der erste Schritt zu einem effektiven Crawler-Management.

Wie können Server-Logs die Crawling-Intensität identifizieren?

Server-Logs bieten eine Rohaufzeichnung jeder Interaktion zwischen dem Googlebot und Ihrer Website. Jeder Eintrag enthält die IP-Adresse, den Zeitstempel und die angeforderte spezifische URL. Durch das Filtern dieser Logs nach dem Googlebot-User-Agent können Sie sehen, welche Bereiche Ihrer Website am häufigsten gecrawlt werden. Häufige Zugriffe auf dasselbe Verzeichnis deuten oft auf eine Crawling-Schleife oder eine ineffiziente Seitenstruktur hin.

Ihr Webserver führt eine Aufzeichnung jeder Anfrage an Ihre Website, einschließlich derjenigen vom Googlebot.

Identifizierung und Blockierung ressourcenintensiver Googlebot-Anfragen — 2
Google Search Central

Die Analyse der Antwortzeit für diese Anfragen hilft Ihnen, Engpässe zu finden. Wenn bestimmte URLs konsequent mehr als 2 Sekunden benötigen, um auf den Crawler zu antworten, sind sie ressourcenintensiv. Sie können Tools wie awk oder grep auf Linux-Servern verwenden, um diese Daten zu extrahieren. Suchen Sie in Ihrem Log-Format nach Statuscodes wie 200, die hohe ‘Time Taken’-Werte aufweisen.

Häufig zu überwachende Felder in Server-Logs

  • Client-IP-Adresse: Überprüft, ob die Anfrage tatsächlich aus einem Google-IP-Bereich stammt.
  • Anfrage-URL: Identifiziert den spezifischen Pfad, einschließlich Abfrageparametern wie ?sort=price.
  • HTTP-Statuscode: Zeigt an, ob die Anfrage erfolgreich war (200) oder einen Fehler verursacht hat (500).
  • Benötigte Zeit: Misst die Millisekunden, die der Server für die Verarbeitung der Anfrage benötigt hat.
  • User-Agent: Bestätigt, ob es sich um die mobile oder Desktop-Version des Googlebot handelt.

Verwendung von robots.txt zur Verwaltung des Crawler-Zugriffs

Die robots.txt-Datei ist Ihr primäres Werkzeug für die Kommunikation mit Suchmaschinen-Crawlern. Sie können die ‘Disallow’-Direktive verwenden, um den Googlebot daran zu hindern, auf ressourcenintensive Verzeichnisse zuzugreifen. Wenn beispielsweise Ihre internen Suchseiten den Server verlangsamen, können Sie den Pfad /search/ vollständig blockieren. Dies verhindert, dass der Crawler diese teuren Datenbankaufrufe initiiert.

Eine ordnungsgemäße Konfiguration stellt sicher, dass der Crawler seine Zeit auf Seiten verbringt, die die Suchsichtbarkeit fördern.

Google Search Central

Es ist wichtig, bei Ihren Direktiven spezifisch zu sein. Das Blockieren wesentlicher CSS- oder JavaScript-Dateien kann verhindern, dass der Googlebot Ihre Seiten korrekt rendert. Dies kann zu Indexierungsproblemen führen, bei denen Ihre Website in den Suchergebnissen fehlerhaft aussieht. Testen Sie Ihre robots.txt-Änderungen immer im Google Search Console robots.txt Tester, bevor Sie sie in die Produktion übertragen.

Warum überlastet der Googlebot manchmal einen Server?

Der Googlebot versucht, Ihre Website so schnell zu crawlen, wie Ihr Server es zulässt, ohne Probleme zu verursachen. Wenn Ihre Serverkonfiguration jedoch schwach ist oder Ihre Website ‘unendliche Räume’ aufweist, kann der Crawler unbeabsichtigt einen Lastspitzenwert verursachen. Unendliche Räume werden oft durch Kalender-Widgets oder komplexe Filtersysteme verursacht, die eine endlose Anzahl einzigartiger URLs erstellen. Jede dieser einzigartigen URLs sieht für den Crawler wie eine neue Seite aus.

Darüber hinaus kann ein plötzlicher Anstieg neuer Inhalte einen Anstieg der Crawling-Aktivität auslösen. Wenn Sie eine Website migrieren oder Tausende neuer Produkte hochladen, wird der Googlebot härter arbeiten, um diese Elemente zu entdecken und zu indexieren. Wenn der Server nicht auf dieses Volumen vorbereitet ist, kann es schwierig sein, Anfragen sowohl für den Bot als auch für Ihre Kunden zu bedienen. Die Überwachung des Crawling-Statistik-Berichts in der Search Console hilft Ihnen, diese Trends frühzeitig zu erkennen.

Wie Alien Road Crawler-Management anwendet

Bei Alien Road verfolgen wir einen systematischen Prozess, um die Serverressourcen unserer Kunden zu schützen und gleichzeitig eine starke Suchsichtbarkeit aufrechtzuerhalten. Wir beginnen mit einer gründlichen Prüfung der Server-Logs, um die Top 5% der URLs zu identifizieren, die die meiste Verarbeitungszeit verbrauchen. In einem typischen Konto stellen wir oft fest, dass dynamische Filter oder Session-IDs die Hauptverursacher sind. Wir implementieren dann spezifische Regeln, um diese Fälle zu behandeln.

Zum Beispiel könnten wir bei einem Shopify-Shop mit komplexen Produkt-Tags feststellen, dass der Googlebot Tausende von Filterkombinationen crawlt. Wir nutzen das URL-Parameter-Tool und robots.txt, um dieses Verhalten zu begrenzen. Unser Team richtet automatisierte Warnungen ein, die uns benachrichtigen, wenn die durchschnittliche Antwortzeit für den Googlebot einen bestimmten Schwellenwert überschreitet. Dies ermöglicht es uns, zu reagieren, bevor eine Serververlangsamung das Nutzererlebnis beeinträchtigt.

Unser Schritt-für-Schritt-Audit-Prozess

  • Log-Sammlung: Wir sammeln 30 Tage an Roh-Server-Logs, um langfristige Crawling-Muster zu sehen.
  • Bot-Verifizierung: Wir führen Reverse-DNS-Lookups durch, um sicherzustellen, dass der Datenverkehr legitimer Googlebot ist und kein Scraper.
  • Pfad-Identifizierung: Wir gruppieren URLs nach Verzeichnissen, um herauszufinden, welche Website-Bereiche am ressourcenintensivsten sind.
  • Direktiven-Implementierung: Wir aktualisieren die robots.txt-Datei, um unwesentliche, schwere Pfade zu sperren.
  • Leistungsüberwachung: Wir verfolgen die ‘Crawling-Statistiken’ in der GSC, um zu bestätigen, dass die Last abgenommen hat.

Können Sie Statuscodes verwenden, um den Googlebot zu verlangsamen?

Wenn Ihr Server unter unmittelbarem Stress steht, können Sie HTTP-Statuscodes verwenden, um dem Googlebot zu signalisieren, langsamer zu werden. Der Statuscode 429 (Too Many Requests) ist speziell für diesen Zweck konzipiert. Wenn der Googlebot einen 429-Code erhält, versteht er, dass er seine Crawling-Rate für einen Zeitraum reduzieren sollte. Dies ist eine vorübergehende Lösung, um einen totalen Serverabsturz bei hohem Datenverkehr zu verhindern.

Eine weitere Option ist der Statuscode 503 (Service Unavailable). Dies teilt dem Crawler mit, dass der Server vorübergehend nicht in der Lage ist, die Anfrage zu bearbeiten. Zusätzlich können Sie den ‘Retry-After’-Header mit einem 503-Code verwenden, um vorzuschlagen, wann der Crawler zurückkehren sollte. Obwohl effektiv, sollten diese sparsam verwendet werden, da anhaltende 503- oder 429-Fehler schließlich dazu führen können, dass Seiten aus dem Index entfernt werden.

Aktionsplan für die kommenden Tage

Beginnen Sie damit, auf Ihre Google Search Console zuzugreifen und im Menü „Einstellungen“ zum Bericht „Crawling-Statistik“ zu navigieren. Überprüfen Sie das Diagramm „Durchschnittliche Antwortzeit“ auf starke Spitzen. Wenn Sie Spitzen sehen, fordern Sie Ihre Rohserverprotokolle von Ihrem Hosting-Anbieter oder IT-Team an. Suchen Sie nach den URLs, die während dieser Spitzenzeiten angefordert wurden, um die ressourcenintensiven Elemente zu identifizieren.

Sobald Sie die problematischen Pfade identifiziert haben, aktualisieren Sie Ihre robots.txt-Datei, um sie zu blockieren. Wenn die Ressourcen für das Seiten-Rendering erforderlich sind, wie z. B. große JavaScript-Dateien, sollten Sie den Code optimieren oder ein Content Delivery Network (CDN) verwenden, um die Serverlast zu verringern. Überwachen Sie weiterhin täglich die Crawling-Statistik, um sicherzustellen, dass Ihre Änderungen den gewünschten Effekt auf die Serverleistung haben.

Teilen