Mod_Rewrite Generator

Der Mod_Rewrite Generator für URLs inkl. GET Parameter erstellt schnell und einfach die passenden Rewrite Regeln für URI & Query URL Umleitungen. Hierbei werden auch hartgesottene Unicode Charsetfehler in den URLs korrekt umgewandelt, sodass sie das Mod_Rewrite Modul behandeln kann. Wenn sich der Hostname unterscheidet, wird dieser ebenso geprüft. URI & Query Umleitungen können gleichzeitig erstellt werden. Bei vorhandenen Query Urls wird bei diesen mit dem Fragezeichen bei RewriteRule sichergestellt, dass die alten Query Parameter nicht erneut an die neue URL angefügt werden. Doppelte Pärchen wie auch identische alte und neue URLs werden herausgefiltert. Tipp: Zur übersichtlichen Mod_Rewrite Referenz mit vielen Beispiel Snippets.

Details zum Mod_Rewrite Generator

Erklärung & Nutzen von URL Umleitungen (URL Rewriting)

Unter einer URL bzw. SEO Umleitung versteht man die zumeist mittels URL Rewriting und dem Apache Modul Mod_Rewrite herbeigeführte Umleitung von URLs. Hierbei wird mittels eines Statuscodes, welcher im HTTP Protokoll verankert ist, technisch tiefergehend ausgedrückt wie z.B. Suchmaschinen und Browser mit dieser Umleitung umgehen sollen. Häufig kommen URL Umleitungen im Rahmen der Suchmaschinenoptimierung zum Einsatz, um bei einem Relaunch oder Anpassung der URLs Besucher möglichst zeitnah auf die jeweils neue Zielseite zu führen, sowie die Stärke von bestehenden Verlinkungen im Internet weitestgehend auf die neuen Zielseiten zu übertragen. URL Umleitungen können für ganze Domains, einzelne Hostnames z.B. Subdomains wie z.B. WWW-Varianten oder einzelne Pfade (URIs) und Query URLs (GET-Parameter) erstellt werden. Zum Selektieren der einzelnen Umleitungsziele kommen zumeist bestimmte reguläre Ausdrücke zum Einsatz.

Über Apache, .htaccess & Mod_Rewrite

Das Rewrite Engine Modul des HTTP Apache Webserver, einer der meistgenutzten Webserver im Internet, heißt mod_rewrite. Auch Webserver wie z.B. Microsoft IIS, Ngnix und Lighttpd bieten diesbezüglich einen ähnlichen Funktionsumfang. Die Syntax zur Erstellung von URL Rewrites unterscheidet sich jedoch zumeist etwas.

Um auf dem Apache Webserver die URL Rewrite Engine mod_rewrite nutzen zu können, muss dieses Modul in der Apache Konfiguration httpd.conf aktiviert sein "LoadModule rewrite_module modules/mod_rewrite.so". Bei fast allen Webspace Angeboten & Managed Servern ist dies durch die Hoster heutzutage standardmäßig aktiviert, da viele CMS, Frameworks & E-Commerce Systeme dies für lesbare URL Strukturen erfordern oder zur Abbildung Ihres MVC Routings benötigen. Ist das Modul aktiviert kann eine .htaccess Datei erstellt werden, welche mit "RewriteEngine on" eingeleitet wird. Im Anschluss können die jeweiligen Rewrite Rules definiert werden.

URL Umleitungen (301 & 302 Redirect)

Die am meisten verbreitetsten HTTP-Statuscodes bei URL Umleitungen sind der 301-Redirect, der auch gerne SEO-Umleitung bezeichnet wird. Hinzu kommt der 302-Redirect, der leider auch heute noch oftmals falsch eingesetzt wird. Im Folgenden möchte ich auf die wesentlichen Unterschiede der beiden Redirect Varianten eingehen.

301 Redirect - Permanente Umleitung

Unter einem 301 Redirect versteht man eine permanente Umleitung einer URL, wie es z.B. klassischerweise bei einem Relaunch samt neuen URLs oder aber auch einem www. Redirect von example.com auf www.example.com Sinn ergibt. Dies bedeutet für Browser zunächst einmal das gespeicherte Favoriten Links mit der neuen URL ersetzt werden können, als auch die Umleitung auf das neue Ziel im Cache vorgehalten werden kann, um HTTP Requests einzusparen. Für Suchmaschinen bedeutet die permanente Umleitung mit dem Statuscode 301, dass die alten URLs in den Suchergebnissen schnellstmöglich mit dem neuen Ziel überschrieben werden, als auch auf die alte URL gesetzte Backlinks unter gewissen Umständen dem neuen Ziel angerechnet werden.

302 Redirect - Temporäre Umleitung

Bei dem 302 Redirect handelt es sich um eine temporäre Umleitung, welche im Unterschied zum 301 Redirect besagt, dass das ursprüngliche Ziel gültig bleibt. Suchmaschinen und Browser gehen also davon aus, dass die angeforderte Ressource bald wieder unter der ursprünglichen URL erreichbar ist, was zu Problemen z.B. beim Relaunch oder der WWW-Umleitung führen kann. Besonders wenn WWW-Umleitungen von Hostern bzw. mit Confixx, einem verbreiteten Konfigurationstool im Webhosting, eingerichtet werden, wird oftmals ein 302 Statuscode für die Umleitung benutzt. Der 302 Redirect ist insbesondere bei Umleitung auf eine externe Domain durch den Problemschwerpunkt des URL-Hijacking in Verruf geraten und sollte nach Möglichkeit nur noch für temporäre Umleitungen im selben Domainbaum genutzt werden. Der Unterschied zwischen dem 302 & 307 Redirect, welche zunächst einmal beide das Gleiche bekunden, liegt darin, dass bei dem 307 Redirect ein POST-Request auch mit einem POST-Request auf die Weiterleitungsurl fortgeführt wird, während beim 302 Redirect lediglich ein GET-Request erfolgt.

Mod_Rewrite Generator & SEO Umleitungen

Da im Zuge eines Relaunch oftmals viele alte URLs mit den jeweils neuen URL Zielen umgeleitet werden müssen, begab ich mich auf die Suche nach einem fähigen Mod_Rewrite Generator. Doch viele dieser Rewrite Rule Generatoren boten teilweise nur an, einzelne alte URLs auf das jeweils neue Ziel umzuleiten. Darüber hinaus fand ich keinen Mod_Rewrite Generator, welcher intelligent die passenden Rewrite Rules generiert wenn z.B. GET Parameter in der URL vorkommen oder es sich um eine Domainumleitung handelt. Aus diesem Grund habe ich mich entschieden einen eigenen Mod_Rewrite Generator zu entwickeln, der meinen Anforderungen gerecht wird und stelle ihn auf diesem Wege auch euch kostenlos zur Verfügung. Um den Mod_Rewrite Generator zu nutzen müssen einfach nur jeweils die alten und neuen URLs eingetragen werden. Das Tool prüft anschließend welche Rewrite Rules für die beabsichtigte Umleitung benötigt werden und liefert die passenden Regeln für die .htaccess Datei aus.

Mod_Rewrite Beispiele, Erklärungen & Referenz

Für alle die etwas mehr über das Thema Mod_Rewrite, deren Syntax & Regular Expressions lernen möchten habe ich eine Reihe von Beispielen, Erklärungen und Tipps für die häufigsten Anwendungsfälle in meiner Mod_Rewrite Referenz zusammen gestellt.