Apache HTTP Server Version 2.5

mod_rewrite bietet eine Möglichkeit, eingehende
URL-Anfragen dynamisch zu modifizieren, basierend auf Regeln mit
regulären Ausdrücken. Dies ermöglicht
es Ihnen, beliebige URLs auf Ihre interne URL-Struktur in jeder
gewünschten Weise abzubilden.
Es unterstützt eine unbegrenzte Anzahl von Regeln und eine unbegrenzte Anzahl angehängter Regelbedingungen für jede Regel, um einen wirklich flexiblen und leistungsfähigen Mechanismus zur URL-Manipulation bereitzustellen. Die URL-Manipulationen können von verschiedenen Tests abhängen: Servervariablen, Umgebungsvariablen, HTTP-Header, Zeitstempel, externe Datenbankabfragen und verschiedene andere externe Programme oder Handler können verwendet werden, um eine granulare URL-Zuordnung zu erreichen.
Umschreibungsregeln können auf vollständige URLs angewendet werden,
einschließlich des Pfadinfo- und Query-String-Teils, und können im
Server-Kontext (httpd.conf), im VirtualHost-Kontext
(<VirtualHost>-Blöcke)
oder im Verzeichniskontext (.htaccess-Dateien und
<Directory>-Blöcke)
verwendet werden. Das umgeschriebene Ergebnis kann zu weiteren Regeln,
interner Unterverarbeitung, externer Anfrage-Umleitung oder
Proxy-Weiterleitung führen, abhängig davon, welche
Flags Sie an die Regeln anhängen.
Da mod_rewrite so leistungsfähig ist, kann es
tatsächlich recht komplex sein. Dieses Dokument ergänzt die
Referenzdokumentation und
versucht, einen Teil dieser Komplexität zu mildern und hochgradig
kommentierte Beispiele für gängige Szenarien bereitzustellen, die Sie
mit mod_rewrite bewältigen können. Wir versuchen aber
auch zu zeigen, wann Sie mod_rewrite nicht verwenden
sollten, und stattdessen andere Standard-Apache-Funktionen nutzen
sollten, um diese unnötige Komplexität zu vermeiden.