RedirectMatch mit Frameloader?
E.T.
- php
Hallo!
Ich möchte demnächst meine Seite von *.htm auf *.php umstellen. Dass das mit .htaccess sehr elegant realisiert werden kann, dass die alten Links erhalten bleiben, weiß ich bereits. Das Problem ist aber, dass meine Seite einen Frameloader hat, so dass 95% aller Verweise auf meine Internetpräsenz wie folgt aussehen: http://www.meine-seite.de/test/index1.htm?/test.htm
Wenn ich mit RedirectMatch htm auf php umleite:
bsp:
RedirectMatch ^/test/([a-zA-Z0-9_-]*).htm$ /test/$1.php
lande ich im o.g. Fall hier: http://www.meine-seite.de/test/index1.php
Gibt es in diesem Fall überhaupt eine Möglichkeit, auf test.php zu verweisen, ohne auf Meta-Refresh zurückgreifen zu müssen?
mfg
E.T.
Hi E. T.!
Es gibt da eine recht gute Möglichkeit dem ganzen Herr zu werden. Das Problem scheint umfangreich - die Lösung aber nicht ;) Ein Haken hat die Sache!!!!!
Alle seiten, die vorher NAME.htm hießen, müssen dann NAME.php (NAME === NAME) heißen. Sonst gehen Dir die ganzen Verweise in den Suchmaschinen flöten und nix funktioniert.
Und natürlich die 404.php mit fogenden Inhalt:
<?php
$neue_datei = explode (".",$REQUEST_URI); //gibt den reinen Phad + Dateinamen wieder aber ohne die Dateiendung
if(($neue_datei[1]=="htm")||($neue_datei[1]=="html")) //ein ErrorDocument nimmt Errors von allen Dateitypen an (!!!!!!!!) daher selektieren
$neue_datei = $neue_datei[0]."php";
else //else{} muß nicht sein, aber da man sonst in eine leere Seite blickt...
echo "z. B. : Diese Datei gibt es nicht";
if(is_file($neue_datei)) //auch wenn dies nicht wirklich von bedeutung ist, spart dem user eine unnötige Weiterleitung ins leere
echo "<UMLEITUNGSKONSTRUKT> (Java, <meta>, ...)"; // head(location....) funkrioniert leider nicht; warum? k. A.
?>
Gruß aus Berlin
eddi