Hello Dedlfix,
ich möchte alle Requests umleiten, für die es keine Ressource gibt
Ich hoffe, dass es so richtig ist und nicht doch irgendwann einen zyklischen Verlauf erzeugt:RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-fBist du sicher, dass du nicht REQUEST_URI verwenden willst? Was ist mit Verzeichnissen (und Symlinks)?
Mit REQUEST_URI funktioniert die Abfrage auf Vorhandensein von Files leider nicht.
Mit REQUEST_FILENAME kann ich zumindest auf existierende Files prüfen und die von der Umleitung ausschließen, was genau erwünscht ist. Symlinks werde ich gleich nochmal ausprobieren.
RewriteRule .* index.php?%{THE_REQUEST}
Und der Query-String?
Es gibt eine CGI-Variable, die den originalen Request enthält (deren Namen du leicht mit print_r($_SERVER) findest). Den Wert kannst du gleich aus $_SERVER lesen, ohne dir $_GET mit nicht zum eigentlichen Request gehörenden Werten zu bevölkern.
Nach der Umleitung ist da aber nix drin, wenn man sie nicht mitliefert. Da ich sowohl die Quasi-Path-Info benötige, als auch den Querystring, habe ich mit den gesamten Request leifern lassen und ihn dann mittles kleiner Funktion selber auseinandergenommen. Das funktioniert zumindest für die GET-Parameter. Ob ich an $_POST dann über PHP herankomme, weiß ich auch noch nicht.
Wenn das nicht klappt, war es wieder einer der berüchtigten Irrwege der EDV :-P
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg