Die Syntax von mod_rewrite


Reguläre Ausdrücke / Regular Expressions
.Ein beliebiges Zeichen.
\.Ein Punkt.
.+Ein oder mehrere beliebige Zeichen.
\.\+Ein Punkt und ein Pluszeichen.
.*Kein oder mehr beliebige Zeichen.
.?Kein oder ein beliebiges Zeichen.
^a"a" am Anfang einer URL oder eines Dateinamens.
a$"a" am Ende einer URL oder eines Dateinamens.
a|bEntweder "a" oder "b".
(.*)(Gruppe) die in ".*" gefundene Zeichenkette wird in der Variable "$1" gespeichert wenn es sich um eine RewriteRule handelt. Wenn es sich um eine RewriteCond handelt wird die Zeichenkette in "%1" gespeichert. Es dürfen mehrere Gruppen in einem Ausdruck verwendet werden. Dementsprechend werden die Inhalte in "$2", "$3", .... "$99" abgelegt.
(a|b)(Gruppe) Sucht nach "a" oder "b" der Text wird gespeichert.
[-0-9a-z]*Beliebig viele Bindestriche, Zahlen oder Kleinbuchstaben.
[^/]*Beliebig viele Zeichen, jedoch kein Slash.
!regexp=true wenn der Ausdruck nicht gefunden wird.
 
<2000Vergleichsausdruck ist kleiner als 2000.
>1000Vergleichsausdruck ist grösser als 1000.
=""Vergleichsausdruck ist ein leerer String.
-dVergleichsausdruck zeigt auf ein Verzeichniss.
-fVergleichsausdruck zeigt auf eine Datei.
-lVergleichsausdruck zeigt auf einen Link.
-sVergleichsausdruck zeigt auf eine nicht leere Datei.
-UVergleichsausdruck zeigt auf eine gültige URL, welche der Client lesen darf.
-FVergleichsausdruck zeigt auf eine Datei, welche der Client lesen darf..

mod_rewrite Flags
[NC]Großschreibung / Kleinschreibung nicht beachten.
[OR]Verknüpft eine "RewriteCond" mit der darauf folgenden über ein ODER. Es müssen alle Bedingungen erfüllt sein, damit die Ersetzung durchgeführt wird. Erlaubt mehrere Varianten.
[R=302]Leitet extern um. Hier 302 = temporär.
[L]Last | Bearbeitung abschliessen, keine weiteren Regeln anwenden.
[N]Die neu festgestellte URL soll noch einmal alle Regeln durchlaufen.
[C]Die nächste Regel wird nur geprüft wenn die aktuelle Regel zutraf.

mod_rewrite Variablen
%{HTTP_ACCEPT}Vom Client akzeptierte Medientypen, z.B. "text/plain".
%{HTTP_COOKIE}Im Client gesetzte Cookies.
%{HTTP_HOST}Domain-Name des abgefragten Hosts.
%{HTTP_REFERER}Referer. Darf leer sein.
%{HTTP_USER_AGENT}Client.
%{QUERY_STRING}Übergebener Anfrage-String. (GET-Formulare)
%{REMOTE_ADDR}IP-Adresse des Besuchers.
%{REMOTE_HOST}Domain-Name des Besuchers (z.B. dip.t-dialin.net).
%{REMOTE_USER}Benutzername des Besuchers. Nach Identifizierung.
%{REQUEST_URI}Die angeforderte URL.
%{REQUEST_FILENAME}Name der vom Client angeforderten Datei (icl. Ordnernamen).
%{SERVER_ADDR}IP des Servers.
%{TIME_DAY}Datum: Tag
%{TIME_MON}Datum: Monat
%{TIME_YEAR}Datum: Jahr
%{TIME_HOUR}Datum: Stunde
%{TIME_MIN}Datum: Minute
%{TIME_SEC}Datum: Sekunde
%{ENV:PATH}"$PATH" aus Apache.
%{HTTP:CONNECTION}"Connection:" aus dem HTTP-Header.
Mittwoch, 10. März 2010
PAGERANK SEO