Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2003 Teil von Juli

SELFHTML Forumsarchiv
RedirectMatch mit Frameloader?

Informationsseite
  1. Seite (PHP) RedirectMatch mit Frameloader? von E.T., 31. 07. 2003, 22:17
    • Seite (PHP) Lösung von Xarax, 02. 08. 2003, 08:31
nach unten

RedirectMatch mit Frameloader?

Die folgende Nachricht zum Thema stammt von: E.T., 31. 07. 2003, 22:17

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.

nach obennach unten

Lösung

Die folgende Nachricht zum Thema stammt von: Xarax, 02. 08. 2003, 08:31

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.


Lege eine .htaccess in Dein Stammverzeichnis mit dem Inhalt:
=============
ErrorDocument 404 /404.php
=============

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

nach oben
Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2003 Teil von Juli

© 1998-2006 Seite Impressum, Software: Classic Forum