mod_rewrite Problem
Tomi
- webserver
Hallo!
Ich habe das Problem, dass die mod_rewrite URL nicht den vollen Inhalt einer Variable übergibt, die das &-Zeichen enthält, so. z.B. bei dem Variableninhalt "Ricky & Laura": hier wird nur "Ricky" ausgegeben.
Beispiel-URL, die nicht funktioniert:
http://www.domain.de/artist/Ricky+%26+Laura.html
oder auch
http://www.domain.de/artist/Ricky+&+Laura.html
Die Original-URL, die funktioniert:
http://www.domain.de/artist.php?interpret=Ricky+&+Laura
Die Ausgabe der Variable $interpret ergibt bei der mod_rewrite URL nur Ricky, d.h. alles, was nach dem &-Zeichen kommt, wird abgehackt. Woran kann das liegen?
Die entsprechende mod_rewrite Regel lautet:
RewriteCond %{HTTP_REFERER} ^http://www.domain/artist/(.*).*$ [OR,NC]
RewriteRule ^artist/(.*),([0-9]+).html$ artist.php?interpret=$1&seite=$2
RewriteRule ^artist/(.*).html$ artist.php?interpret=$1
Wäre für Hilfe sehr dankbar!
Beispiel-URL, die nicht funktioniert:
http://www.domain.de/artist/Ricky+%26+Laura.html
oder auch
http://www.domain.de/artist/Ricky+&+Laura.htmlDie Original-URL, die funktioniert:
http://www.domain.de/artist.php?interpret=Ricky+&+LauraDie Ausgabe der Variable $interpret ergibt bei der mod_rewrite URL nur Ricky, d.h. alles, was nach dem &-Zeichen kommt, wird abgehackt. Woran kann das liegen?
RewriteRule ^artist/(.*),([0-9]+).html$ artist.php?interpret=$1&seite=$2
Vielleicht solltest Du erstmal klären, wie bzw. ob PHP in der URL artist.php?interpret=Ricky+&+Laura&seite=123 die Funktion des ersten Unds (Text) von der des zweiten (Einleitung eines URL-Parameternamens) immer eindeutig unterscheiden kann. Dasselbe Problem existiert auch in der Regel ohne &seite, in genannten ist es allerdings offensichtlicher, daher dieses Beispiel.
Hilfreich wäre sicher auch, zu erfahren, wie mod_rewrite die Parameter eigentlich zusammensetzt, was also im PHP-Skript letztlich ankommt (phpinfo(INFO_VARIABLES)).
Dass der Direktaufruf funktioniert, ist ohne Zweifel merkwürdig, trotzdem solltest Du genannten Punkt korrigieren.
Und wieso nennst Du den Interpreten/Künstler eigentlich einmal Artist und einmal Interpret? Artisten treten doch eher im Zirkus am Hochseil auf.