![]() ![]() |
In den Suchmaschinen gefunden werden trotz CMS und dynamischem Seitenaufbau
Der grösste Teil der Inhalte im Internet ist über Suchmaschinen nicht findbar. Solche Inhalte werden von den Suchmaschinen als Seiten von webbasierten Datenbankapplikationen und Web Content Management Systemen anhand der Syntax der URL erkannt. Aus guten Gründen lehnen die meisten Suchmaschinen das Indizieren und Weiterverfolgen solcher Seiten ab. Aber es gibt Mittel und Wege, wie Sie ihre dynamischen Webseiten trotzdem in die Suchmaschinen bekommen. 1. Das Informations-Paradox: Suchmaschinen indizieren den grössten Teil des Content im Web nicht! Gemäss einer Studie von Bright Planet (http://www.brightplanet.com) sind um die 500 Milliarden Seiten in den Tiefen des Internets verborgen und über Suchmaschinen nicht findbar. Suchmaschinen, so denkt man, sind ja eigentlich dazu da, Webinhalte zu indizieren und damit findbar zu machen. Die meisten Webinhalte stehen in Datenbanken und über WCMS verschiedener Art zur Verfügung und werden erst live beim Webseitenaufruf erzeugt und auf der Seite dargestellt. Und ausgerechnet vor solchen Inhalten haben fast alle Suchmaschinen Angst! Das hat vier gute Gründe: A. Spidern bis zur Erschöpfung ist unerwünscht ('spider trap') Suchmaschinen wollen sich mit ihrem Spider nicht in solchen Datenbeständen verheddern und über eine unbekannte Zahl von Parameterkombinationen an eine Unmenge von 'Seiten' kommen, die eigentlich keine echten Seiten sind. B. Dissonanz zwischen gespidertem und aktuellem Inhalt der Seite Inhalte in Datenbanken können jederzeit wechseln und werden oft aktualisiert - somit können Widersprüche zwischen dem von einer Suchmaschine Angezeigten und dem tatsächlichen Inhalt entstehen. C. Während definierter Benutzersitzungen („Sessions') abgerufene Seiten sind oft benutzerspezifisch zusammengestellte Inhalte und deren URLs sind nach Ablauf der Sitzung nicht mehr gültig. Viele Shopsysteme, e-Commerce-Seiten oder auch normale Webseiten vergeben beim ersten Seitenaufruf oft sogenannte Session-IDs, die an die URL angehängt und von Link zu Link weitergegeben werden und somit ermöglichen, den Benutzer über viele Seiten hinweg zu identifizieren. Suchmaschinen möchten solche Seiten nicht indizieren, denn eine Benutzersitzung kann benutzerspezifischen Inhalt haben und die Sitzung wird nach einer gewissen Zeit ungültig, sodass diese Seiten später nicht mehr aufrufbar sind. D. Verschiedene Parameterkombinationen können zu gleichem Inhalt führen Parameter wie beim Aufruf einer Site vergebene Session-Variablen, Parameter, die mit der Menüsteuerung zu tun haben usw. können sich in einer Parameter-Kette ändern, aber trotzdem enthält die dadurch entstehende Seite dadurch evtl. denselben Inhalt, wenn die inhaltsrelevanten Parameter gleich bleiben. Woran erkennt eine Suchmaschine dynamische Websites? Genau genommen geht es nicht um die Tatsache, dass eine Seite dynamisch generiert wird, sondern um die URL-Syntax, die auf die dynamische Generierung einer Seite hinweist. Sobald eine URL nicht mit .htm oder .html endet, sondern beispielsweise mit .pl, .php, .cfm oder .asp, wird sie von manchen Suchmaschinen bereits verdächtigt, dynamisch live beim Aufruf erzeugt zu werden, denn die Endungen .pl, .php, .cfm oder .asp bezeichnen Dateien, die ein Script serverseitig ausführen und die HTML-Seite erst generieren, bevor sie dann zum Browser geschickt wird. Die roten Warnlampen gehen jedoch spätestens dann richtig an, wenn eine URL weitere Indikatoren für Dynamik wie die Angabe eines cgi-bin-Verzeichnisses oder sogenannte CGI-Escape-Zeichen wie ?, &, = usw. mit angehängten Parametern enthält - dies zeigt eindeutig auf serverseitige Scriptfunktionalität, die meist Datenbankinhalte in die Website beim Aufruf live einsetzt. Zur Verdeutlichung: So sieht ein 'normaler' und unverdächtiger URL aus: So sehen leichtverdächtige URLs aus: Und so sehen URLs aus, die eindeutig auf dynamische Generierung deuten: Cut nach dem Fragezeichen Manche Suchmaschinen spidern zwar solche URLs mit angehängten Parametern, schneiden jedoch vorher alles nach dem Fragezeichen ab (so arbeitet beispielsweise zur Zeit die Suchmaschine Fireball.de) und indizieren dann den Inhalt. Aus http://www.meineseite.com/news.cfm?id=3&sprache=de 2. Trotzdem gefunden werden: URL-Parameter suchmaschinenfreundlich umgestalten Im folgenden werden einige Techniken gezeigt, mit denen man das beschriebene Dilemma auf verschiedene Weise umgehen kann. 1. Am einfachsten und wirkungsvollsten: Statische HTML-Seiten auf dem Live-Server verwenden Über das in diesem Beitrag geschilderte Problem müssen Website-Betreiber, die einfach statische HTML-Seiten verwenden, überhaupt nicht nachdenken. Das gilt auch für Web Content Management Systeme, die dynamischen Redaktionsserver und Live-Server trennen und statische Seiten aus der Datenbank für den Live-Server generieren oder WCMS, die bereits suchmaschinenfreundliche URL-Syntax verwenden (diese Syntax beschreiben wir noch in diesem Beitrag). Seiten mit der Endung .htm oder .html ohne angehängte Parameter werden von allen Suchmaschinen bedenkenlos aufgenommen (insofern keine anderen Hinderungsgründe bestehen). So haben Sie zwar weiterhin das Prinzip der dynamischen Seitengenerierung, aber es werden auf dynamische Weise statische Seiten generiert, die selbst wiederum nicht dynamisch sind und daher als einfache HTML-Dateien existieren können. Zusätzliche statische Seiten zum Spidern bieten Zusätzlich zur dynamischen Website kann man statische Übersichten und statische Inhaltsseiten bieten, die dann zumindest von Suchmaschinen gespidert werden können, die keine dynamischen Seiten mögen. Wenn Sie mit ihrem WCMS keine statischen HTML-Seiten generieren können, verwenden Sie doch einfach eins der für diesen Zweck existierenden Tools wie Teleport Pro. Diese spidern ihre Site ab und generieren daraus statische Seiten. Zumindest kann man solche statischen Abbilder der dynamischen Website zusätzlich in ein Unterverzeichnis schieben und das dann gezielt bei den Suchmaschinen anmelden. Wenn Sie ihre Seiten sowieso schon in einer Datenbank gespeichert haben, ist es kein Problem, zusätzlich daraus automatisch statische HTML-Seiten generieren zu lassen, die man in ein bestimmtes Verzeichnis legt. Nun gibt es zwei Möglichkeiten, damit umzugehen: a) Sie melden bei Suchmaschinen, die ihren dynamischen Seiten bisher feindlich gesonnen waren, gezielt dieses Unterverzeichnis mit den statischen Seiten an. b) Sie erkennen in ihrem Script auf der dynamischen Startseite über entsprechende CGI-Parameter, welcher Spider gerade auf ihre Website kommt und lenken ihn auf das Verzeichnis mit den statischen Seiten um, wenn es sich um den Spider einer URL-Parameter-feindlichen Suchmaschine handelt. Weiterer guter Nebeneffekt bei Verwendung echter statischer Seiten ist, dass die Seiten schneller übermittelt werden, da dynamische Seiten auf dem Server etwas mehr Zeit brauchen (auch wenn meist unmerklich), bevor sie an den Browser geschickt werden 2. Dynamische Seiten mit URL-Parametern in einfachen dynamischen Seiten verpacken Eine einfache Methode besteht darin, eine komplexe URL mit Parametern in einer Seite mit einem einfachen Namen per Include-Befehl zu verpacken. Nehmen wir die URL Diese setzen wir mit einem Include-Befehl, den jede serverseitige Scriptsprache wie PHP oder ColdFusion bietet, in eine Datei mit dem einfachen Namen Schon hat die URL keine Parameter mehr und wird von den Suchmaschinen mit mehr Freundlichkeit betrachtet und eher indiziert. 3. Suchmaschinenfreundliche URL-Syntax Bei dieser Methode bleiben die Parameter in der URL vorhanden, aber deren Syntax wird so geändert, dass kein Fragezeichen darin vorkommt. Statt verwenden Sie die Link-Syntax oder Eine solche Syntax verwendet beispielsweise Amazon - dadurch werden alle Buchseiten von Amazon in den Suchmaschinen erfasst, obwohl die Seiten dynamisch generiert werden. oder Hier besteht die Gefahr, dass eine Suchmaschine diesen Link mit einem Slash am Ende ergänzt, was dann bei manchen Webservern zu einem 404-Error führen kann. Das liegt daran, dass diese Syntax eigentlich nicht korrekt ist, denn eine URL muss mit einem Dateinamen enden oder einem Verzeichnisnamen mit angehängtem Slash („/'). Diese Techniken erfordern zweierlei: eine bestimmte Konfiguration ihres Webservers, sodass er selbst eben nicht die gesamte URL für einen Seitenverweis hält, sondern nur einen Teil davon und somit das richtige Script im Serververzeichnis finden kann. Beispiel: Beim Aufruf von Sie müssen in ihren Seitenscripts jeweils die Parameter und Werte korrekt aus dem URL.-String auslesen und den Parametern die Werte wieder korrekt zuweisen. Dazu verwendet man die CGI-Parameter Path_Info oder Script_Name. Unter Apache kann das mit mod_rewrite automatisiert werden. 4. Endung der dynamischen Seiten ausblenden Dieser Trick verfeinert die anderen hier vorgestellten Techniken noch weiter. Wir haben Ihnen bisher Techniken vorgestellt, mit denen aus einer URL wie http://www.meineseite.com/index.php?tid=293 etwas würde wie http://www.meineseite.com/index.php/tid/293/ oder http://www.meineseite.com/index.php/293/. Unter Apache kann man einer einzelnen Datei einen MIME-Typ zuweisen. Mit Force Type weist man dem Script „index' beispielsweise im Falle eines PHP-Scripts den Typ „application/x-httpd-php3' zu. Die URL hiesse dann einfach http://www.meineseite.com/index/293/ Dadurch wird die URL kürzer und es lässt sich von aussen nun auch defintiv nicht mehr erkennen, welche Technik man nun intern für die dynamischen Seiten verwendet 5. Direkter Eintrag in die Suchmaschinen Generell gilt, dass das aktive einzelne Eintragen von Seiten in Suchmaschinen grössere Erfolge bringt als seine Site nur passiv spidern zu lassen. Aber beachten Sie dabei: Jede Suchmaschine hat eine Schmerzgrenze für die Anzahl angemeldeter Seiten pro Domainname, die sich auch auf einen Zeitrahmen bezieht (x Seiten in y Tagen für einen bestimmten Domainnamen werden akzeptiert). Dies sind beispielsweis bei Google 2 Seiten pro Tag, bei Excite 25 Seiten pro Woche, bei Altavista 5 Seiten pro Tag und bei Inktomi 300 Seiten pro Tag. Manche Suchmaschinen haben auch Sperrfristen für das Neuanmelden bereits erfasster Seiten - das ist bei Excite beispielsweise eine Zeitspanne von 60 Tagen Eine ausführlichere Version des Artikels erschien in der verfügbaren Neuauflage des Buchs "Web Content Management" im Galileo-Press-Verlag. 05/2002, Thomas Eppler
| ![]() ![]() | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
© 1999-2010 FEiG & PARTNER | Nutzungsbedingungen | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
know how news veranstaltungen | ||
![]() | ||
![]() |