mod_rewrite Fragen
Stephan
- webserver
0 Alexander Foken0 Stephan
0 Alex
Hallo,
mein anderer Thread ist in die Forumsarchivjagdgründe gagangen und ich frage also jetzt nochmal hier die Frage, die ich dort nichtmehr gestellt habe:
Wie ghet sowas: index/browse/world/ab/cd/ aus dieser Datei: index.php?browse=/world/ab/cd/ , dazu müsste doch dieser Code da sein, oder?:
RewriteEngine on
Options +FollowSymLinks
RewriteBase /aa/aa/
RewriteRule ^index/(.*)/(.*)/$ index.php?$1=/$2
Der geht aber nicht, ich werde immer zurück zur Hauptseite (index.php ohne die ?) geleitet...
Danke schonmal
Stephan
Moin Moin !
Die Apache Group hat für beide gängigen Apache-Versionen (1.3 und 2.0) das mod_rewrite-Modul sehr gut dokumentiert und sogar einen Guide für URL rewriting geschrieben, Dein Problem ist mit an Sicherheit grenzender Wahrscheinlichkeit durch Lesen von zwei Dokumenten von apache.org zu lösen.
[War das jetzt das längste RTFM aller Zeiten?]
Wenn Dir das nicht weiterhilft, dann vielleicht der Name des "Dings nach dem Fragezeichen": Es heißt "Query String" und sollte ein gutes Futter für Suchmaschinen sein, zusammen mit mod_rewrite.
Alexander
Hallo,
ich habe die ellenlage Doku schon gelesen und habe dies kombiniert. Mit anderen zeichen (also , statt /) zwischen den Strings geht es, nur es geht irgendwie nicht mit /, da ja ein String auch /A/ beinhaltet. In der Doku ist aber nicht beschrieben, wie man dann vorgeht, in SuMAs habe ich auch schon gesucht, aber nichts gefunden.
Grüße
Stephan
Moin Moin !
ich habe die ellenlage Doku schon gelesen und habe dies kombiniert. Mit anderen zeichen (also , statt /) zwischen den Strings geht es, nur es geht irgendwie nicht mit /, da ja ein String auch /A/ beinhaltet.
In der Doku ist aber nicht beschrieben, wie man dann vorgeht,
Das escaping ist nicht dokumentiert oder nicht existent? *Das* würde mich jetzt wirklich wundern.
in SuMAs habe ich auch schon gesucht, aber nichts gefunden.
Merkwürdig. Ich hab bei Google mit "mod_rewrite query string" unter den ersten zehn Treffern schon was brauchbares gehabt.
Weißt Du, das es für die Replace-Operationen auch Optionen gibt?
Alexander
Hallo,
also ich habe das durchgeguckt und nix gefunden: http://www.google.de/search?hl=de&ie=UTF-8&oe=UTF-8&q=mod_rewrite+query+string&meta=lr%3Dlang_de
Ich habs hetrzt anders gelöst, danke.
Stephan
Wie geht sowas: index/browse/world/ab/cd/ aus dieser Datei: index.php?browse=/world/ab/cd/
Auf dem Server, den ich benutze, geht das ganz ohne User-Einstellung und mod_rewrite.
Wenn die Datei bzw. das Verzeichnis index/browse/world/ab/cd/ nicht vorhanden ist, so gibt Apache nicht sofort eine 404 Fehlermeldung, sondern sucht nach der Datei (bzw. Verzeichnis), die eine Ebene höher im angegebenen Pfad liegt, also nach index/browse/world/ab. Wenn die auch nicht existiert, geht's wieder eine Ebene höher, und so fort. Bis Apache bei der existierenden Datei index angekommen ist. Die wird dann aufgerufen und in PHP kann man über $_SERVER['PATH_INFO'] den Teil hinter dem aufgerufenen Dateinamen (also /browse/world/ab/cd/) abfragen.
Habe leider nicht viel Ahnung über evtl. nötige Server-Voreinstellungen, aber bei mir funktionierts (Apache Server auf UNIX).
Grüße, Alex