Artikelformat

URL-Rewrite: So funktioniert URL Manipulation mittels htaccess Regel!

XOVI Banner

Dieser Artikel richtet sich überwiegend an Anfänger im Bereich Suchmaschinenoptimierung. Folgendes Thema wird in diesem Artikel behandelt: URL Manipulation mittels mod_rewrite.

Als Einstieg sollte zunächst einmal die Frage beantwortet werden, was mod_rewrite überhaupt ist. mod_rewrite ist ein Modul des Apache Webservers, mit dem man die bestehenden URL’s mit relativ wenig Aufwand manipulieren und suchmaschinenfreundlicher gestalten kann.

Dieses Apache Modul muss in der Regel nachträglich aktiviert werden. Um in einem lokal installierten Apache Webserver dieses Modul zu aktivieren, muss lediglich eine Zeile Code in der httpd.conf bearbeitet werden:

Dabei muss einfach die Raute (#), mit der die Zeile auskommentiert wird, entfernt werden.

Bei den meisten Providern, die in ihrem Webspace-Paket PHP & MySQL anbieten, ist mod_rewrite oftmals bereits aktiviert. Wenn dieses nicht der Fall sein sollte, dann genügt eine Anfrage bei der Technik-Abteilung des jeweiligen Providers, und das Modul wird in wenigen Minuten aktiviert.

AAWP

Bestes Amazon Affiliate Plugin: AAWP

AAWP Funktionen
  • Sehr schöne Vergleichstabellen
  • Mehr Provisionen
  • Geringer Aufwand
AAWP Button

Wie genau können URLs per htaccess manipuliert werden?

Ich werde nun ein Beispiel vorstellen, wie man unübersichtliche URLs in schön strukturierte und für die Suchmaschinen-Spider leichter lesbare URLs umwandeln kann. Ich geh davon aus, dass es sich um eine dynamisch generierten Seite handelt, die in diesem Fall folgende Struktur aufweist:

  • index.php?article=1 (Artikel hat eine fortlaufende Zahl)

Die Inhalte werden auch aus einer Datenbank geladen. Der Aufbau der Tabelle (z. B. article) könnte folgendermaßen aussehen:

id title text
1 Apfelsaft Der Apfelsaft ist ein Frucht...
2 Orangensaft Orangensaft ist ein...
...

Mit mit Hilfe von mod_rewrite, kann man nun den Anschein erwecken, als würde man mit rein statischen Seiten arbeiten. Dann würde eine Struktur beispielsweise wie folgt aussehen:

  • artikel-[ID].html

Da ich aber eine noch elegantere Lösung haben möchte, muss ich einige Vorbereitungen treffen. In meinem eleganten Fall soll der Titel der Seite in der URL mit angezeigt werden.

  • apfelsaft-1.html

Zunächst einmal muss der Titel bei der Ausgabe überarbeitet werden. Es muss dafür gesorgt werden, dass alle Umlaute umschrieben, Sonderzeichen ersetzt werden und die Ausgabe in Kleinbuchstaben erfolgt. Dabei beschränke ich mich in diesem Artikel auf das Ersetzen der Umlaute und das Ausgeben in Kleinbuchstaben.

Affiliate School

Online Kurs: Affiliate School Masterclass

Affiliate School Lerninhalte
  • Schnellausbildung zum Online Marketer
  • Enorme Zeitersparnis und steile Lernkurve
  • Ideal für Anfänger geeigent
Affiliate School Button

Hierfür benötigen wir eine kleine PHP-Funktion:

Die Funktion wird, beispielsweise in der Navigation, wie folgt aufgerufen:

Mit dieser Funktioniert wird nun ein Link generiert der deutlich aussagekräftiger ist:

  • apfelsaft-1.html

anstatt

  • index.php?article=1

Wie kann der Apache-Webserver mittels mod_rewrite, die neu definierten URLs verarbeiten

Wie kann nun der der Apache-Webserver mit den neuen, nicht wirklich existierenden URLs auch arbeiten ohne das ein 404 (Datei nicht gefunden) ausgegeben wird? Hierfür benötigt man eine ganz normale Text-Datei mit dem Namen ‘.htaccess’. In meinem Fall, besteht die .htaccess Datei lediglich aus zwei Zeilen, die wie folgt strukturiert werden:

Hinweis am Rande, da Windows weder Dateien noch Ordner mit führendem Punkt anlegen kann, muss die Datei ‘.htaccess’ mit einem Texteditor in dem Root-Verzeichnis gespeichert werden und dann umbenannt werden.

Die erste Zeile ist eine simple Anweisung an den Apache-Webserver, so dass dieser für das jeweilige Verzeichnis, sowie für alle Unterverzeichnisse das Modul ‘mod_rewrite’ lädt. Mit der zweiten Zeile definiere ich nun mittels Regular Expression (RegExp), welche Seite der Server laden muss, wenn ein besagter Fall zutrifft.

Mit ‘$2′ wird definiert, dass der zweite Ausdruck ‘([0-9]*)’ als Wert für den Parameter ‘article’ relevant ist. Sollte die Regel für ein bestimmtes Unterverzeichnis nicht mehr gelten, so muss für das jeweilige Verzeichnis eine zusätzliche .htaccess Datei mit folgendem Inhalt angelegt werden:

Als Abschluss möchte ich erneut darauf hinweisen, dass dieses Tutorial für sehr einfache Systeme vorgesehen ist, jedoch ist die Vorgehensweise in den meisten Fällen fast identisch.

SeedingUp

Digital Content Marketing Plattform: SeedingUp

SeedingUp Funktionen
  • Website & Produkte bekannt machen
  • Hochwertige Backlinks kaufen und verkaufen
  • Schnell und effizient
SeedingUp Button
Bewerte diesen Artikel
1 Stern2 Sterne3 Sterne4 Sterne5 Sterne

16 Bewertung(en), durchschnittlich: 5,00 von 5

Loading...

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.