AJAX Crawling-Scheme

AJAX Crawling-Scheme

Copyright © Shutterstock / G-Tech Studios

Was ist ein AJAX Crawling-Scheme?

AJAX Crawling-Scheme beschreibt ein bestimmtes Webcrawling-Verfahren, das Suchmaschinen anwenden, wenn es sich um Internetseiten mit dynamisch generierten Inhalten handelt. Sowohl Google als auch andere Suchmaschinen bedienen sich des AJAX Crawling-Schemes.

Der Suchmaschinenbetreiber hat dieses Crawling-Schema seit 2009 genutzt, inzwischen jedoch eingerĂ€umt, dass es nicht mehr zeitgemĂ€ĂŸ ist. Seit 2015 empfiehlt Google an Stelle des AJAX Crawling-Scheme die Verfahren des Progressive Enhancement oder die Optionen, die HTML 5 bietet. Diese Methoden gewĂ€hrleisten den Zugang zu bestimmten Webseiten-Content durch Crawler.

Überblick und Allgemeines zum AJAX Crawling-Scheme

Das AJAX Crawling-Scheme setzt an bei der DatenĂŒbertragung zwischen Browser und Server. Bei Webanwendungen auf AJAX-Basis wird der darzustellende Content mittels asynchroner DatenĂŒbertragung erzeugt. Dies ermöglicht die Realisation von HTTP-Anfragen ĂŒber JavaScript sowie XML wĂ€hrend einer Browsersitzung, ohne dass die HTML-Seite zusĂ€tzlich erneut geladen werden muss. In der Praxis können also inhaltliche Bestandteile sowie Teile der BenutzeroberflĂ€che durch den Browser geladen werden. Der Content wird vom Server beziehungsweise aus einer Datenbank geladen, ohne dass eine weitere HTTP-Kommunikation zwischen Browser und Server erforderlich wĂ€re. Damit verhĂ€lt es sich anders als etwa bei statischen HTML-Webseiten.

Mögliche Probleme

Dies ermöglicht etwa die Übernahme von bereits eingegebenen Formulardaten durch den Browser. Ebenso können Daten modifiziert werden, wenn diese aktuell bleiben mĂŒssen, wie es etwa bei Datumsangaben von Bedeutung ist.

In diesem Prozess kommt es zu keiner Unterbrechung der Client-Server-Verbindung. Die dynamische Inhaltsgenerierung stoßen Webseiten-Besucher selbst an, indem sie zum Beispiel auf der entsprechenden Webseite ein bestimmtes Objekt anklicken. Durch diesen Prozess kommt es zur AusfĂŒhrung eines Skripts. Dieses steht zwischen der HTTP-basierten Kommunikation zwischen Client und Server. Das Skript lĂ€dt dabei zuvor ausgewĂ€hlten Inhalt.

Aufgabe der AJAX-Engine ist es nun, den Aufruf eines Skriptes zu erfassen und anschließend eine XML-basierte Anfrage an eine Datenbank oder den Server durchzufĂŒhren. Auf diese Weise soll sie die Inhalte finden. In diesem Zusammenhang spielt der Begriff der asynchronen Anfrage eine wichtige Rolle. Vom Benutzer ausgewĂ€hlte oder aufgerufene Elemente werden anschließend mit Hilfe des Skripts dynamisch auf der Internetseite geladen beziehungsweise ausgefĂŒhrt.

Problematik im Zusammenhang mit Suchmaschinen

Die Frage nach der Anwendung und dem Nutzen des AJAX Crawling-Schemes legt einige Schwierigkeiten offen. Google hat eine offizielle BestĂ€tigung dafĂŒr gegeben, dass sein eingesetzter Bot imstande ist, JavaScript zu verstehen. Damit lassen sich auch Webseiten auf Basis des Skripts crawlen. Jedoch ist der Google-Bot hier mit BeschrĂ€nkungen konfrontiert, die sich darin zeigen, dass manche JavaScript-Bestandteile nicht oder nicht korrekt oder vollstĂ€ndig interpretiert werden. Hinzu kommt, dass Googles Webcrawler keine AJAX-Links crawlen kann, wenn diese erst einer Aktivierung durch den Nutzer bedĂŒrfen.

Zudem zeigt sich die Problematik vieler AJAX-basierter Webseiten, dass das angewandte URL-Schema eine HĂŒrde fĂŒr den Webcrawler darstellen kann. Damit wird gleichermaßen die Indexierung erschwert.

Auf einer Vielzahl von AJAX-Seiten werden bestimmte URL-Fragmente angewandt, bei denen eine Raute (“#”) diese von der ĂŒbrigen URL trennt. Solche URL-Fragmente werden oftmals ignoriert, wie etwa aus Tests dieser URLs in Googles Search Console hervorgeht.

Umsetzung und Funktionsweise

Praktisches Ziel in der Anwendung des AJAX Crawling-Scheme ist es, dynamische Webseiten-Inhalte lesbar fĂŒr Google-Bots oder Crawler auszuspielen. GrundsĂ€tzlich sind diese Bots, Crawler und Spider nicht imstande, dynamisch generierten Content zu interpretieren. Ebenso können sie keine Skripte interpretieren. WĂ€hrend diese Programme das Internet nach Inhalten durchsuchen, benötigen sie im Hinblick auf solche Inhalte entsprechende Hilfsmittel. Das AJAX Crawling-Scheme versucht, jeweilige Snapshots beziehungsweise HTML-Momentaufnahmen des je aktuellen Inhalts einer Seite auf einem Server oder einer Datenbank zu hinterlegen.

HTML-basierte Auszeichnungen sorgen wiederum dafĂŒr, dass der Content auch fĂŒr textbasierte Crawler lesbar wird. Im Rahmen solcher Aufzeichnungen liegen zwei verschiedene Versionen vor.

Schritte zur Vorbereitung fĂŒr das AJAX Crawling-Scheme

Die Vorbereitung einer Webseite fĂŒr das AJAX Crawling-Scheme bedarf mehrerer Schritte. ZunĂ€chst wird auf der Internetseite gekennzeichnet beziehungsweise notiert, dass sie das AJAX Crawling-Scheme unterstĂŒtzt.

Domains, deren Content dynamisch erzeugt wird, werden um das Ausrufezeichen (“!”) ergĂ€nzt. Dieses folgt auf das Rautezeichen. Die Kombination “#!” wird auch als Hash-Bang bezeichnet, was der Lautschrift der englischsprachigen Begriffe fĂŒr diese Zeichen entspricht. Ab dieser Stelle beginnen die sogenannten Hash-Fragmente, das heißt der Bereich, der im Rahmen einer dynamischen Abfrage erzeugt wird. Meist handelt es sich hier um Attribute, Wertpaare oder IDs. Diese bestimmte Notation teilt einem Webcrawler mit, dass die betreffende Webseite das AJAX Crawling-Scheme unterstĂŒtzt.
In einem zweiten Schritt gilt es, fĂŒr jede dynamisch generierte URL eine andere URL-Form fĂŒr den Crawler zu erzeugen. Zur Referenzierung des HTML-Snapshots muss der Server die korrekte URL ausgeben. Die URL mit Hash-Bang wird in eine Form ĂŒbertragen, die dem Server mitteilt, dass der Crawler die Inhalte der Ausgangs-URL anfordert. Der Server erhĂ€lt auf diese Weise die Information, dass der Webcrawler noch ein HTML-Snapshot zurĂŒcksenden soll.
Der dritte Schritt besteht darin, die HTML-Snapshots zu erzeugen. Dies geschieht fĂŒr jede dynamisch generierte URL. Im Anschluss wird der HTML-Snapshot auf dem Server hinterlegt. Es handelt sich bei diesem Snapshot um eine Art Kopie, die fĂŒr das Auslesen durch den Crawler optimiert ist. Nach AusfĂŒhrung des JavaScripts werden die dynamisch erzeugten Inhalte bereitgestellt und im Anschluss in Form des HTML-Snapshots fĂŒr den Webcrawler lesbar.

Mehrere Methoden stehen zur Erstellung von HTML-Snapshots zur VerfĂŒgung, die in AbhĂ€ngigkeit der Skriptsprache oder der verwendeten Technologie zum Einsatz kommen können. Eine Möglichkeit besteht darin, Browser ohne BenutzeroberflĂ€che zu verwenden. Ein Beispiel fĂŒr einen solchen Browser ist etwa HTMLUnit. Weitere Möglichkeiten zur Erstellung von Snapshots bieten Tools wie crawlajax. Solche Varianten bieten sich insbesondere dann an, wenn es sich um besonders viel via JavaScript erzeugten Content handelt. Bei Anwendung von Verfahren wie PHP oder ASP können Nutzer auch den Quellcode zur serverseitigen Generierung von HTML verwenden. Ebenso lassen sich JavaScript-Elemente durch statische Code-Bestandteile ersetzen. Die am hĂ€ufigsten zum Einsatz kommende Möglichkeit besteht jedoch darin, fĂŒr jede AJAX-URL eine statische HMTL-Internetseite offline bereitzustellen.

Seitens der Suchmaschine wird der Snapshot fĂŒr jede URL indexiert. Die fĂŒr den Crawler nicht lesbaren dynamischen Inhalte werden nicht indexiert. Entsprechend werden auch in den Suchergebnislisten oder SERPs lediglich die AJAX-URLs dargestellt. Hierbei handelt es sich um URLs, die ein Hash-Fragment aufweisen.

AJAX Crawling-Scheme und sein heutiger Stellenwert in der SEO

Da Suchmaschinenbetreiber schon ĂŒber mehrere Jahre daran arbeiten, Elemente auf JavaScript-Basis durch ihre Webcrawler lesbar zu machen, nimmt die Bedeutung des AJAX Crawling-Schemes ab. 2015 teilte Google mit, dass dieses Crawling-Schema als nicht mehr zeitgemĂ€ĂŸ gilt und nicht mehr empfohlen wird. Dies unterstreicht die enormen Fortschritte, die Webcrawler in ihrer FĂ€higkeit machen, Skripte auszulesen. Speziell im Zusammenhang mit responsiven Inhalten ist die Empfehlung von Relevanz. Da jedoch Anwendungen auf AJAX-Basis noch immer weite Verbreitung haben, werden auch solche Ă€lteren Internetseiten weiterhin von Suchmaschinen indexiert.


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte