20 Dynamische Websites – eine Einführung
Nachdem wir nun erfolgreich eine statische Website aufgebaut haben, wollen wir uns dem Aufbau dynamischer Seiten widmen. Doch zunächst erst einmal einige Basics.
Das Wort Dynamik bezieht sich in der Webentwicklung auf das Generieren der Inhalte von HTML-Dokumenten aus Datenquellen aller Art. Um Websites dynamisch zu machen, gibt es zwei grundlegende Vorgehensweisen:
1. | Die Daten werden in Echtzeit beim Aufruf der Website durch eine Skriptsprache als CGICGI aus der Datenbank gelesen, aufbereitet und dynamisch in HTML-Dokumenten ausgegeben. Diese Methode hat den Vorteil, dass die Website sehr aktuell ist. Änderungen in der Datenbank werden sofort auf der Website dargestellt. Der Nachteil ist, dass bei hoher Besucherfrequenz die Serverlast enorm zunimmt und dass Suchmaschinen immer wieder Probleme mit aus Datenbanken generierten Websites haben. Dennoch bietet die Methode viele Vorteile, auf die wir gleich ausführlich eingehen. |
2. | Die Website wird, sozusagen auf Knopfdruck, aus einer Datenbank generiert und in Form von statischen HTML-Dokumenten auf dem Server abgelegt. Bei Firmenwebsites, die sich nicht ständig ändern, kann man über diese Methode nachdenken. Suchmaschinen können diese Seiten meist problemlos indizieren. Ein weiterer Vorteil ist, dass der Besucher zu keinem Zeitpunkt eine Datenbankverbindung aufbauen muss. |
20.1 Vorteile dynamischer Sites
Wir werden die erste und damit die dynamischere Methode verwenden. Der Aufwand in der Programmierung und Administration ist geringer. Und auch die weiteren Vorteile liegen auf der Hand: Wenn es bislang so war, dass Firmen beim Ändern der Website Ihre Internetagentur anrufen mussten, können sie so Änderungen mit einem Content Management System einfach selbst herstellen. Neue Inhalte werden automatisch online verfügbar gemacht.
20.1.1 Statische versus dynamische Sites
Wir haben in den letzten Jahren 80 Prozent der neuen Websites dynamisch aufgebaut. Der Trend dahin ist unverkennbar. Es gibt sicherlich viele Gründe dafür, die auch in der breiten Verfügbarkeit und einfachen Einsetzbarkeit von Skriptsprachen wie PHP zu suchen sind.
PHP und MySQL | PHP ist einfach zu programmieren. Wenn man ein wenig Übung hat, ist eine einfache, dynamische Website genauso schnell erstellt wie eine statische, da viele Skriptelemente, entsprechende Programmierung vorausgesetzt, wieder verwendbar sind.
Geringe Kosten | Immer noch herrscht in vielen Agenturen andächtiges Schweigen, wenn von dynamischen Websites die Rede ist, und massive Kosten werden prognostiziert. Es gibt keinen Grund dafür. PHP und MySQL erfordern in der Regel keine hohen Entwicklerkosten und es gibt massenhaft Open Source-Projekte, die Ihnen an Mustern und Tools alles zur Verfügung stellen, was Sie benötigen.
20.1.2 Dynamische Sites und Suchmaschinen
Dass Suchmaschinen Websites mit Datenbankanbindungen nicht indizieren, ist ein Gerücht. Die Nachteile sind etwas anders gelagert. Dynamische Websites haben unter Umständen einen sehr kurzen Lebenszyklus. Inhalte von heute sind morgen bereits wieder offline oder unter anderen Pfaden zu finden. Das führt unter Umständen dazu, dass in Suchmaschinen Seiten indiziert sind, die es so gar nicht mehr gibt.
20.1.3 Dynamische Sites und Sessions
Bei dynamischen Websites wird zudem häufig mit Sessions gearbeitet. Das sind kleine Datenfiles, die so lange existieren, wie Sie auf eine Site zugreifen. Häufig werden damit Warenkörbe realisiert.
Session-IDs | Beim Zugriff auf eine Seite wird eine Session-ID erzeugt, die in einem Cookie gespeichert oder einfach an die URL angehängt wird. Dabei entstehen in der Regel ellenlange Nummern in der Browseradressleiste.
Eine Session-ID existiert nur für eine bestimmte Zeit, danach wird sie gelöscht. Greift nun eine Suchmaschine auf eine Site zu, wird ebenfalls eine Session erzeugt. Die Seite wird dann inklusive der Session-ID indiziert. Greift die Suchmaschine dann ein weiteres Mal auf die Seite zu, gibt es diese ID nicht mehr, und die Suchmaschine erhält eine Fehlermeldung. Die Seite fliegt dann entweder aus dem Index oder es wird gleich ihre ganze URL gelöscht.
Seiten nicht indizieren | Seiten, die mit Sessions arbeiten, sollten Sie daher immer von der Indizierung von Suchmaschinen ausschließen. Das ist nicht schwierig: Starten Sie Sessions einfach nie schon auf der ersten Seite, geben Sie auf dieser in den Metaangaben <nofollow> ein und lassen Sie dann die erste Seite indizieren. Eine andere, allerdings aufwändigere Methode ist, gleich auf dem Webserver bei einem Request abzufragen, ob eine Suchmaschine zugreift. Suchmaschinen können dann umgeleitet werden, z. B. auf eine spezielle Seite, deren Inhalt mit vielen Metaangaben und Schlagwörtern einer guten Platzierung dient.
Websites ohne Session und mit beständigen Kennungen werden, auch wenn sie dynamisch sind, sehr gut indiziert. Google bietet viele gute Beispiele dafür.