Zum Inhalt springen
Der Guide für ein smartes Leben.
Web-Programmierung mit HTML und CSS

Feedburner

Autor: Franz Neumeier • 15.3.2011 • ca. 4:35 Min

Direkt steuern lässt sich das zwar nicht, aber es gibt doch einige Tricks, über die sich eine schnellere Indizierung provozieren lässt: XML-Sitemaps, Pubsubhubbub, Twitter und Ping-O-Matic....

Direkt steuern lässt sich das zwar nicht, aber es gibt doch einige Tricks, über die sich eine schnellere Indizierung provozieren lässt: XML-Sitemaps, Pubsubhubbub, Twitter und Ping-O-Matic.

image.jpg
Sehr flexibel, aber nicht ohne etwas Programmieraufwand zu bekommen: Yahoo Boss.
© Internet Magazin

Eine XML-Sitemap (www.xml-sitemap.de ) listet alle vorhandenen Seiten einer Website im XML-Format auf. Über die Webmastertools von Google (www.google.com/webmasters/tools/ ) können Sie manuell auf die Aktualisierung der Sitemap aufmerksam machen oder automatisiert über entsprechende Sitemap-Plugins in Ihrem CMS.Verbreiten Sie die URL eines neuen Beitrags auf der Website per Twitter, zeigen Erfahrungen, dass Google den Content oft schneller indiziert als wenn Sie darauf warten, dass Googles Crawler den Content zufällig von selbst findet.Für Blogs relevant ist Ping-O-Matic (pingomatic.com ). Der kostenlose Dienst prüft regelmäßig Blogs auf neue Beiträge und benachrichtigt beispielsweise auch Google Blog Search automatisch über neuen Content.

Feedburner

Besonders effektiv ist aber das relativ neue Pubsubhubbub-Protokoll (code.google.com/p/pubsubhubbub/ ). Anders als RSS-Reader, die regelmäßig prüfen, ob es neuen Content gibt, informiert Pubsubhubbub aktiv über neue Inhalte. Erfreulicherweise muss man sich hierfür nicht mit der Programmierung herumschlagen, denn Feedburner unterstützt Pubsubhubbub automatisch.Um Nutzen daraus zu ziehen, müssen Sie also lediglich Ihren RSS-Feed über Feedburner (feedburner.google.com ) leiten und bei Feedburner unter Publicize die Option PingShot aktivieren.Auch hier sind Blogger und Benutzer von Content-Management-Systemen klar im Vorteil: Alle CMS bieten fertige RSS-Funktionen direkt oder über Plugins an. Wer mit WordPress arbeitet und Feedburner nicht benutzen will, findet Hilfe in dem Pubsubhubbub WordPress-Plugin (wordpress.org/extend/plugins/wp-pubsubhubbub/ ).Für statische Seiten bedeutet die Einrichtung eines RSS-Feeds dagegen zusätzliche Handarbeit, die sich unter diesem Aspekt meist nicht lohnt. Etwas erleichtern kann man sich die Arbeit mit Software, beispielsweise dem Freewaretool ssRSS 4.0 (ssrss.sourceforge.net ).Voraussetzung für alle Beschleunigungs-Methoden ist immer, dass Google Ihre Website grundsätzlich für so relevant hält, dass alle Seiten indiziert werden. Das lässt sich vor allem über regelmäßig neue Beiträge und einzigartigen Content erreichen - also nicht über Texte, die bereits an anderer Stelle im Web veröffentlicht wurden.

Eigene PHP-Suchmaschine

Die größten Freiheiten bietet eine Suchmaschine, die im eigenen Webspace läuft. Zugleich birgt eine solche Lösung aber auch die größten Risiken und macht am meisten Arbeit. Solche Skripte sind beispielsweise iSearch (www.isearchthenet.com/isearch/ ), mnoGoSearch (www.mnogosearch.org ), Risearch (risearch.org ) und TSEP (tsep.info ) sowie Sphider (www.sphider.eu ), mit dem wir uns hier etwas näher beschäftigen wollen.

Risearch

Ein interessantes Projekt für alle, die mit starken Beschränkungen in ihrem Webspace zu kämpfen haben, ist Risearch. Das Backend basiert auf Perl, das Frontend ist PHP. Interessant an dem sonst ziemlich antiquiert wirkenden Risearch ist, dass sich das Perl-Skript zur Indizierung der Seiten auch lokal zu Hause auf dem PC ausführen lässt.Erst den fertigen Index lädt man dann per FTP auf den Webserver. Auf diese Weise benötigt man weder eine Dateibank noch besondere Rechte am Webserver. Zudem spielen auf diese Weise auch Skriptlaufzeit- Beschränkungen oder unzureichender Arbeitsspeicher am Webserver keine Rolle.Um das Perl-Skript von Risearch zur Indizierung lokal auszuführen, benötigen Sie lediglich einen Perl-Interpreter wie Active- Perl (www.activestate.com/activeperl/downloads ). Der große Nachteil der lokal durchgeführten Indizierung ist aber natürlich, dass die manuelle Indizierung bei jeder Änderung auf der Website erneut durchgeführt werden muss. Daher ist es durchaus eine Überlegung wert, ein paar Euro mehr für ein weniger beschränktes Webhosting- Paket auszugeben, als sich den relativ hohen Aufwand mit Risearch anzutun.

Sphider

Sphider ist relativ leicht aufzusetzen und bietet umfassende Funktionalität. Je umfangreicher eine Website wird, desto negativer wirkt sich allerdings Sphiders einziger wirklicher Nachteil aus: das langsame Indizierungstempo. Sphider ist aber in der Lage, beispielsweise wegen begrenzter Skript-Laufzeiten abgebrochene Indizierungsdurchläufe an der richtigen Stelle wieder aufzunehmen, allerdings muss die Fortsetzung der Indizierung manuell gestartet werden.

image.jpg
Die Indizierung von Sphider bei der Arbeit.
© Internet Magazin

Fügt man der Website neuen Content hinzu, muss aber nicht die gesamte Website neu indiziert werden, denn die Indizierung lässt sich beschränken auf die gewünschte Linktiefe: Tiefe 0 indiziert nur die angegebene URL, Tiefe 1 verfolgt die Links auf der angegebenen Seite, Tiefe 2 auch die Links auf den so gefundenen Seiten. Zusätzlich lassen sich URL-Bestandteile explizit ein- oder ausschließen, sodass Sie beispielsweise ausschließlich alle Seiten mit dem URL-Bestandteil "kategorie-2", gegebenenfalls kombiniert mit der Linktiefe- Option, indizieren können.Und auch bei Änderungen auf bestehenden Seiten ist keine komplette Neuindizierung nötig - über die Reindex-Funktion können Sie präzise angeben, welche Seite oder welche Unterstruktur der Website neu indiziert werden soll.

Automatisierung

Standardmäßig muss die Indizierung bei Sphider manuell angestoßen werden, eine automatische Indizierung beispielsweise alle paar Stunden oder jede Nacht sieht das Skript nicht vor. Da Sphider aber auch auf Kommandozeilenebene ausgeführt werden kann, lässt sich die Indizierung über Cronjobs steuern. Dazu stellt Sphider Parameter zur Verfügung, die in der Dokumentation genau erläutert sind. Die Anweisung

php sphider.php -u https://www.
meinedomain.de/test.html -d 2 -m
kategorie3

würde beispielsweise von test.html ausgehend zwei Verzeichnisebenen tief alle Seiten indizieren, in denen die zeichenkette "kategorie3" in der URL vorkommt. Geschickt konstruiert lässt sich so der Index weitgehend automatisiert aktuell halten.Allerdings: Auch hier sind natürlich die vom Server gegebenen Begrenzungen zu berücksichtigen, denn Skript-Laufzeitbegrenzungen greifen natürlich auch hier und brechen die Indizierung gegebenenfalls ab, wenn der Vorgang zu lange dauert. Mit ein wenig Testen und Aufteilen der Neuindizierung in mehrere kleinere Cronjobs ist das aber meist in den Griff zu bekommen.

Konfigurationstricks

Sphider ist in der Lage, mehrere Websites zu indizieren und in einem Index zusammenzuführen. Diesen Umstand kann man geschickt ausnutzen, um die eigene Website in mehrere Segmente aufzuteilen, um die Indizierung von neuen Content zu vereinfachen und zu beschleunigen. So macht es zum Beispiel Sinn, die Verzeichnisstruktur für selten geänderten Content in eine eigene Site bei Sphider zu packen und von häufig aktualisierten News zu trennen. Kommt eine neue Newsmeldung hinzu, muss nur das Segment mit den News (mit zusätzlichen URL- und Linktiefe-Beschränkungen) indiziert werden, was entsprechend schneller geht und Server-Ressourcen spart.Eine spannende Erweiterung von Sphider versteckt sich gut im Support-Forum des Anbieters, erfordert aber etwas PHP-Kenntnisse: Mit dem Mod namens "Follow sitemap.xml" (www.sphider.eu/forum/read.php?3,2454,2454 ) lässt sich eine Indizierung lediglich neu erstellter Seiten realisieren. Das ist zum Schonen von Server-Ressourcen hilfreich, besonders nützlich aber in Webhosting-Paketen, in denen die Skript- Laufzeit begrenzt ist und deshalb komplette Indizierungs-Vorgänge regelmäßig wegen Zeitüberschreitung abbrechen.