Apache RedirectMatch will nicht

W

wiwi

Jungspund
Hallo,

habe meine Homepage von PHP auf Ajax umgestellt. Nun will ich die alten Link (die u.U. bei google noch gelistet sind, in mein neues Design umstellen).

Folgende RewriteRule hatte ich unter PHP am Start:

Code:
RewriteRule ^([0-9,a-z,A-Z]+)_([0-9,a-z,A-Z]+).html$ \index.php?global1=$1&global2=$2 [QSA]

Also zum Beispiel /bild_23.html ging nach index.php?global1=bild&global2=23. Standard halt.

Nun, meine neue Seite (mit Ajax) wandelt alles nach index.html, getrennt durch # um, äqivalent würde also obiges Beispiel nun so aussehen:

/index.html#bild#23

Die RedirectMacht (ich muss den browser ja nun weiterleiten lassen, damit Ajax von der neuen URL was mitbekommt) sieht so aus:

Code:
RedirectMacht permanent ^([0-9,a-z,A-Z]+)_([0-9,a-z,A-Z]+).html$ \index.html#$1#$2

leider liefert mir das dann bei der Anfrage nach /bild_23.html einen klassischen 404-Fehler.

Kennt sich jemand mit der Materie detaillierter aus als ich und kann mir paar Ratschläge zur Fehlersuche vermitteln?

Vielen Dank, WiWi
 
Könnte es sein, das das #-Zeichen ein Kommentar im Apache-Config. ist ? Dann reicht evtl. ein \# ...

Heiko
 
Hallo hwj,

das dachte ich auch schon, wenn ich das # aber auskommentiere, bekomme ich beim reload des apachene Fehlermeldung. Ich nehme an, das # wird nur am Beginn einer Zeile als Kommentar interpretiert.

Habe es nun anders gelöst. ich benutze den alten ReWrite, verlinke aber auf eine redirect.php, welche die übergebenen variablen interpretiert und auf meine index.html per php-header weiterleitet. Funktioniert genauso gut :)

Viele
WiWi
 

Ähnliche Themen

Nginx als Reverse Proxy für Nextcloud und Emby

Apache2 php5

Squid nur zum maskieren der eigenen IP, nicht für Webserver auf port 80

Apache zu langsam ?

Onlineumfrage programmieren (mehrseitige HTML Formular an PHP übergeben)

Zurück
Oben