Andy: Problem mit RewriteRule

Hallo an Alle,

nachdem ich jetzt stundenlang die Apache-Dokumentation und die Dokumentation von Ralf Engelschall studiert habe und immer noch nichts passendes gefunden habe, wende ich mich mal an Euch.

Folgendes Problem:

ich habe den Server gewechselt und möchte nun die alten Seiten auf den neuen Server umleiten. Das soll so aussehen:

http://www.altedomain.de/verzeichnis/verzeichnis2/datei.htm

soll so weitergeleitet werden

http://www.neuedomain.de/verzeichnis/verzeichnis2/datei.shtml

Das soll dann bei auch bei allen Unterverzeichnissen funktionieren, also nur ein Eintrag in die .htaccess im Root-Verzeichnis. Bis jetzt müsste ich in jedes Verzeichnis eine eigene .htaccess anlegen, wäre also sehr aufwendig, aber bis jetzt komm ich nicht weiter.

Hat jemand einen Tipp für mich?

Danke,

Andy

  1. Gu'n Tach Andy

    nachdem ich jetzt stundenlang die Apache-Dokumentation [...] studiert habe und immer noch nichts passendes gefunden habe, wende ich mich mal an Euch.
    ich habe den Server gewechselt und möchte nun die alten Seiten auf den neuen Server umleiten.

    Hast du wirklich in der Apache- Doku gelesen? Auf
    http://www.apache.org/docs-1.2/mod/mod_rewrite.html#RewriteRule
    ist das wohl besser erklaert, als ich es jemals koennte. Trotzdem:

    RewriteRule  (.*) http://www.neuerserver.de$1

    kommt in die Config vom alten Server.  (.*) bezeichnet jedes Zeichen
    sooft wie es will (also alles) und das $1 bezeichnet die erste Branch
    in dieser Expression (also eben dieses 'alles').

    HTH,
    Gero

    1. Hallo Gero,

      Hast du wirklich in der Apache- Doku gelesen? Auf
      http://www.apache.org/docs-1.2/mod/mod_rewrite.html#RewriteRule
      ist das wohl besser erklaert, als ich es jemals koennte. Trotzdem:

      RewriteRule  (.*) http://www.neuerserver.de$1

      kommt in die Config vom alten Server.  (.*) bezeichnet jedes Zeichen
      sooft wie es will (also alles) und das $1 bezeichnet die erste Branch
      in dieser Expression (also eben dieses 'alles').

      Das habe ich natürlich auch schon probiert. Funktioniert bei mir aber nur, wenn nur die Hauptdomain aufgerufen wird. Sobald etwas dahinter steht kommt ein 404-Fehler. Ich weiss auch nich woran es liegt.

      Ausserdem (selbst wenn es klappen würde) kommt noch hinzu (und das ist mein Problem), das die Dateien auf dem alten Server auf .htm enden und auf dem neuen Server .shtml. Das wird bei

      RewriteRule  (.*) http://www.neuerserver.de$1

      leider nicht mit berücksichtigt.

      Gruss

      Andy

      1. Tach Andy

        Ausserdem (selbst wenn es klappen würde) kommt noch hinzu (und das ist mein Problem), das die Dateien auf dem alten Server auf .htm enden und auf dem neuen Server .shtml. Das wird bei
        RewriteRule  (.*) http://www.neuerserver.de$1
        leider nicht mit berücksichtigt.

        Ja, das ist mir nicht aufgefallen - aber auch das ist kein Problem:

        RewriteRule ([^.]+).htm http://www.neuerserver.de$1.shtml

        Hast du Probleme mit den Regular Expressions? Da kann ich naemlich
        man 7 regex sehr empfehlen :-)

        Gruesse, Gero