So aktivieren Sie suchmaschinenfreundliche URLs
Beitrag eingestellt am: 28.06.2006
aktualisiert am: 02.12.2008
Dynamische und statische Seiten
Normalerweise ist CMBasic ein dynamisches System. Neue Seiten werden aus der Datenbank erzeugt und müssen daher durch spezielle URL-Anhänge wie ?feedback oder ?eigenschaften angefordert werden. Statische HTML-Seiten gibt es bei Content-Management-Systemen in der Regel nicht.
Gerade Suchmaschinen sind solchen dynamisch generierten Seiten gegenüber misstrauischer als gegenüber statischen Seiten. Die Chance, dass solche Seiten gelistet werden, ist (etwas) geringer als wenn die Adresse aus rein statischen Seiten bestehen würde.
Bei CMBasic sind diese URL-Parameter erfreulicherweise eindeutig und kurz. Bei Joomla, um nur ein Beispiel zu nehmen, wird ein Impressum möglicherweise so aufgerufen: ?option=com_content&task=view&id=12&Itemid=26. Bei CMBasic genügt ein kurzes und knackiges ?impressum. Wir machen seit vielen Jahren die Erfahrung, dass Google und Co. mit diesen kurzen URL-Anhängen keine Probleme haben.
Die Voraussetzungen
Nun ist CMBasic zwar schon gut vorbereitet, trotzdem kann es aber noch besser werden. Sie können der Suchmaschine und Ihren Besuchern vorgaukeln, dass Ihre Site aus lauter statischen HTML-Seiten besteht. Aus ?feedback wird dann feedback.html. Das gelingt mit einem kleinen Trick!
Einzige Voraussetzung: Ihr Dienstleister unterstützt das Apache-Modul mod_rewrite. Bei den meisten Dienstleistern sollte es auch prima funktionieren. Bei Strato funktioniert es inzwischen auch schon! Bei 1&1 kann es dann Probleme geben, wenn CMBasic nicht im Stammordner der Präsenz installiert wird. Aber auch das lässt sich evtl. lösen.
Suchmaschinenfreundliche URLs einschalten
Sie sind sich sicher, dass Ihr Dienstleister das Feature mod_rewrite unterstützt? Sehr gut. Schalten Sie suchmaschinenfreundliche URLs ein. Das geht so: Benennen Sie die Datei htaccess.txt aus dem Stammordner um in .htaccess. In Worten: Punkt und htaccess. Diese Datei gibt dem Webserver die Anweisung, dass und wie die URLs umschrieben werden sollen.
Leider wird Ihnen das Umbenennen unter Windows nicht so einfach gelingen, da sich Windows über den ungültigen Dateinamen beschwert. Der Trick: Öffnen Sie die htaccess.txt in einem Texteditor wie Notepad oder Weaverslave (nicht in Word!) und speichern Sie sie unter .htaccess. (Oder vollziehen Sie die Umbenennung online mit Ihrem FTP-Programm.)
Laden Sie diese .htaccess nun hoch auf Ihren Webserver, und zwar in den Stammordner von CMBasic. Außerdem müssen Sie in edit/config.inc.php die Variable $friendlyURL auf 1 schalten:
Nun sollte den freundlichen URLs nichts mehr im Wege stehen. Beachten Sie, dass Sie diese freundlichen URLs dann auch bei internen Links verwenden können und sollten.
Hoppla, jetzt funktioniert gar nichts mehr? Dann unterstützt Ihr Hoster leider keine suchmaschinenfreundlichen URLs. Löschen Sie die .htaccess und schalten Sie $friendlyURL wieder auf 0. Sie werden sicher auch ohne dieses Feature gut in Google und Co. gelistet werden!
Quellcode der .htaccess
Und so sieht der Quellcode der Datei .htaccess aus. Wir zeigen Ihnen die Variante aus CMBasic ab Version 1.3, und zwar mit Zeilennummern:
1 RewriteEngine on
2 # RewriteBase /
3 Options +FollowSymlinks
4 RewriteRule ^((a-zA-Z0-9_-)+).html$ index.php?$1
In Zeile 1 wird die »RewriteEngine« erst einmal eingeschaltet. Zeile 2 ist vorerst deaktiviert, sie erkennen das an der Raute #. Sie haben Probleme, beispielsweise in einem Unterverzeichnis eines 1&1-Servers? Nehmen Sie die Raute weg und geben Sie den Pfad in Bezug auf den Stammordner an. Zeile 3 und 4 steuern dann die gesamte URL-Umschreibung.
(In höheren Versionen von CMBasic gibt es einige zusätzliche Regeln, die vor allem die Sicherheit betreffen. In CMBasic 1.6 kommt außerdem eine Umschreibungsregel für den RSS-Feed hinzu. Ich stelle alle diese Zeilen an dieser Stelle nicht dar.)