Sebastian Röring Websites optimieren für Google & Co. schnell+kompakt
Suchmaschinen <a href="http://www.meine-seite.de/unterseite1.html" title="meine Seite" target="_self">link zu meiner Seite</a> Diesen Text kann ein Suchmaschinenrobot ohne weiteres lesen und erkennt direkt, dass es sich hier um einen Link auf eine andere Seite handelt. Mithilfe von CSS lässt sich so ein Link auf vielfältige Art und Weise in Optik und Verhalten verändern, doch das scheint vielen Webdesignern nicht genug zu sein. So werden Techniken wie Flash oder JavaScript eingesetzt, um der gestalterischen Freiheit nachzukommen. Leider haben Suchmaschinen noch große Probleme, mit solchen Elementen umzugehen, bzw. werden diese Elemente von den meisten Suchmaschinen einfach ignoriert. Schade nur, wenn sich hier der einzige Link zu weiteren Seiten versteckt. Was Suchmaschinen von Ihrer Webseite tatsächlich sehen, lässt sich mit so genannten Website-Spider-Simulatoren hervorragend überprüfen (z. B. http://www.webconfs.com/search-enginespider-simulator.php). Testen Sie auch gleich einmal einige bekannte Flash-Seiten auf deren lesbare Inhalte. Sollten Ihre Seiten alle lesbar und Ihre Inhalte bei Google durch den Befehl site: gelistet sein, steht einer guten Positionierung bei Google nicht mehr viel im Weg. Da wir gerade dabei sind, möchte ich Ihnen eine kurze Übersicht über weitere nützliche Google-Suchbefehle geben, die Ihnen helfen können, Faktoren zur Optimierung zusammenzutragen:: [Die Syntax ist immer die gleiche: Befehl:www.seite.de]: cache: Greift auf den Google-Cache zu, d. h. es werden von Google gespeicherte Seiten angezeigt. Das ist sehr nützlich, wenn sich die gesuchte Seite häufig ändert und Sie lieber auf alten Inhalt zugreifen möchten. Oder Sie sind einfach neugierig und daran interessiert, was die Konkurrenz vor kurzer Zeit zu bieten hatte. 22
Suchmaschinenarchitektur inanchor: Sucht gezielt nur Links und Linktexte nach dem eingegebenen Begriff ab, da diese häufig mit korrekten Schlüsselwörtern benannt werden und zum gesuchten Inhalt führen können. inurl: Gibt Seiten zurück, bei denen der Suchbegriff in dem URL auftaucht intitle: Sucht nur die Title-Zeilen der Webseiten nach einem bestimmten Suchbegriff ab intext: Sucht gezielt nur die Texte der Webseiten nach einem bestimmten Suchwort ab und ignoriert die Kopfzeilen. Das ist oft die Standartsucheinstellung. link: Zeigt alle Seiten an, die auf eine bestimmte Seite verlinken. site: Begrenzt die Suche auf eine bestimmte Seite. related: Sucht nach ähnlichen Seiten im Internet. 2.3 Suchmaschinenarchitektur Um zu verstehen, wieso eine Suchmaschine beim Indizieren einer Webseite auf Probleme stoßen kann, muss man erst einmal den Aufbau und deren Arbeitsmethodik kennenlernen. Ich möchte und kann Ihnen hier keine wirklich tiefen Einblicke in die Techniken der einzelnen Systeme geben, da dies den Rahmen eines Buches sprengen würde und auf Grund der Geheimhaltungstaktik der Betreiber auch nicht möglich ist. Generell lässt sich aber dennoch einiges über die Architektur der Suchdienste zusammentragen, was für den Aufbau einer Webseite von entscheidender Bedeutung ist. Eine Suchmaschine, auch Information Retrieval System genannt, arbeitet mit speziellen Webcrawler-Systemen. Diese Skripte durchforsten das Netz nach verwertbaren Inhalten und hangeln sich dabei von Link zu Link, völlig selbstständig und (fast) ohne schnell + kompakt 23
Suchmaschinen Mitwirken der Betreiber. Des Weiteren überprüfen sie den schon vorhandenen Datenbestand, vergleichen diesen mit der online vorgefundenen Variante und modifizieren dementsprechend den vorhandenen Datensatz. Die Crawler gehören zu den Protokollmodulen, die ähnlich wie Clients im direkten Kontakt zum Web stehen. Sie geben ihre Informationen an die Verarbeitungsmodule weiter, welche die Daten bearbeiten, auf den so genannten Storeservern speichern und mit dem Scheduler kommuniziert. Die dritte Modulschicht besteht aus dem Dokumentenindex inkl. Depot und stellt die Datenspeichermodule dar. Die Komponenten der Suchmaschinen Der Dokumentindex ist die Schnittstelle zwischen Storeserver und dem Scheduler. Er enthält relevante Informationen zu allen Webseiten einer Internetpräsenz. Diese werden in einem speziellen Verfahren abgelegt und beinhalten u. a. den aktuellen Crawl- Status, die Größe des Dokuments, Zeitstempel des ersten und letzten Besuchs der Crawler, Änderungshäufigkeit, Titel, Descrip- 24
Suchmaschinenarchitektur tion aus den Metatags oder das zu verwendende Snippet, Inhalte der Datei robots.txt und dem Meta-Tag robots und schließlich Informationen zum Host und Server. Der Scheduler, oder auch URL-Server, ist vergleichbar mit einem Projektmanager in einer Firma. Er koordiniert das Zusammenspiel zwischen dem Index und den Crawlern und verteilt spezifische Aufträge an die Suchmaschinen-Spider. Hierzu zieht er sich die notwendigen Informationen aus dem Index und generiert eine Reihenfolge für die zu vergebenen Aufträge. Durch den ständigen Kontakt zu den einzelnen Crawlern kann er die Aufgaben optimal aufteilen und überwacht zudem die an den Storeserver zurückgelieferten Daten. Je nach Suchmaschinenanbieter variieren die Prioritäten des Schedulers. Ob nun das Hauptaugenmerk auf der Erweiterung oder auf Aktualität des Index liegt, wird also von den jeweiligen Einstellungen abhängig gemacht. Ebenso regelt der Scheduler anhand vorher festgelegter Werte und spezifischer Faktoren die Quantität, mit der eine Webseite auf Aktualisierung überprüft wird, Crawler (Spider) sind die einzigen Komponenten, die außerhalb der Architektur arbeiten. Crawler bekommen in der Regel vom Scheduler den Befehl, einen URL zu besuchen und die dort hinterlegten Inhalte herunterzuladen oder um die Aktualität der dort hinterlegten Daten zu überprüfen. Er löst also den ihm übermittelten URL in die IP-Adresse auf (das geschieht durch einen eigenen DNS-Cache auf dem Server), schickt einen HTTP-Request an den entsprechenden Server und fordert die dort hinterlegten Daten an. Diese übergibt der Crawler dann dem Store-Server und meldet sich beim Scheduler für den nächsten Auftrag an. Um die Dimension und die Schnelligkeit dieser Anfragen etwas greifbarer zu machen: Google stellt für diesen Prozess zahlreiche Rechenzentren in den USA und Irland bereit, die teilweise über 10 000 Server beherbergen. Jeder dieser Server überwacht einige schnell + kompakt 25
Suchmaschinen hundert Crawler-Prozesse, und jeder dieser Prozesse fragt mehrere tausend Ressourcen pro Sekunde ab. Erstaunlich, oder? Der Storeserver, oder auch Indexer genannt, hat neben der Datensichtung und Sicherung zahlreiche weitere Aufgaben. Er sorgt u. a. für die Erkennung und Eliminierung der doppelten Einträge, organisiert die Aktualität des Index und überprüft die von den Crawlern gelieferten Daten hinsichtlich erlaubter Inhalte (u. a. mithilfe einer Blacklist) und Fehlerfreiheit. Hier wird also entschieden, ob Ihre Seite den Sprung in den Index schafft oder direkt von der Aufnahme ausgeschlossen wird. Das Repository ist im entfernten Sinne der Speicher einer Suchmaschine. Hier lagert der Storeserver den von den Crawlern gelieferten Inhalt der Webseiten als eine Art komprimierte Kopie unsortiert ab, wenn dieser alle Filterverfahren überwunden hat. Zur Sortierung vergibt das Repository, ebenso wie der Index, eine interne ID. So können die Seiten untereinander zugeordnet werden. Wird eine neue Version einer Webseite gemeldet, kann der alte Datenbestand überschrieben werden. Nun folgt die Datenaufbereitung, denn die vom Crawler gesammelten und im Repository gespeicherten Daten verfügen über keinerlei Struktur. Die Daten liegen also lose herum und müssen vorab nach bestimmten Kriterien gesichtet und gewichtet werden. Das übernimmt der Parser. Er analysiert die im Repository befindlichen Dokumente und bereitet sie auf, indem er (für die reine Inhaltsgewinnung) unwichtige Elemente aussortiert. Diese Form der Datennormalisierung ist für den weiteren Prozess unabdingbar. Bilder, Skripte und Multimediaelemente werden hier gnadenlos aus dem Index entfernt und das Dokument wird auf den Text reduziert. Schlüsselwörter werden dabei herausgefiltert und helfen, den Inhalt zu beschreiben. 26