Hi,
»» Damit das alles für den Nutzer "nett" aussieht, lasse ich per mod_rewrite lesefreundliche URLs wie /kategorie/seite3 in die Form mit URL-Parametern umwandeln, die ich intern haben möchte, z.B. /index.php?page=/kategorie/seite3.
Aaah, ok. Du gibst als Parameter praktisch den Namen, wie es in der URL erscheinen sollte.
Wie funktioniert denn in etwa das mod_rewrite? Könnte man das in 1-2 Sätzen erklären? Bzw. wäre die Konfiguration simpel?
ob man das mod_rewrite-Modul des Apachen so kurz erklären kann ...
Ich kann aber erklären, wie ich es nutze. :-)
Ich habe folgende Konfiguration in einer .htaccess-Datei:
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php?page=$1 [QSA,L]
Das heißt: Die Rewrite-Engine wird erstmal überhaupt eingeschaltet, dann wird festgelegt, dass URLs sich immer auf / beziehen sollen. Bedingungen für das Umschreiben der URL sind, dass der Original-Request NICHT auf eine existierende Datei und NICHT auf ein existierendes Verzeichnis geht. Dann wird, wie schon erwähnt, alles in der Form
/<path>
auf
index.php?page=<path>
umgeschrieben. Eventuelle URL-Parameter aus dem Original-Request werden zusätzlich wieder mit angehängt (QSA).
Da ich außerdem noch meine Include-Dateien im gleichen Verzeichnis ablage, ergänze ich noch:
<Files ~ "\.inc$">
Order allow,deny
Deny from all
</Files>
Dann kann niemand meine *.inc-Dateien per HTTP abrufen.
So long,
Martin
Er: Mit wem warst du gestern abend aus?
Sie: Du bist mal wieder eifersüchtig wie immer!
Er: Wer ist Immer?