(Deutsch) RewriteRule, RewriteCond und Reguläre Ausdrücke


Sorry, this entry is only available in Deutsch.

, , , , , ,

  1. #1 by kojak2008 on January 27, 2011 - 11:03 am

    Hallo Webmaster,

    ich bin auf der Suche nach einer Möglichkeit, das ich die Domain behalte die ich ursprünglich in die Adressleiste eingegeben habe, wenn diese zu einer anderen Domain ungeleitet wird.

    Weis da irgendjemand rat?
    Geht das überhaupt, weil ich nicht fündig werde.

    Also 3 Domainnamen leiten alle auf eine Domain und die eingegebene Adresse soll in der Adressleiste bleiben.. !??!?!?!

    Viele Grüße
    kojak

  2. #2 by Webmaster on February 13, 2011 - 9:40 am

    Benutze einfach ein Frameset. Doku: http://de.selfhtml.org/html/frames/index.htm
    Grüße

  3. #3 by Alex on February 18, 2011 - 12:38 pm

    Hallo,

    wenn ich jetzt folgendes stehen habe:

    RewriteEngine on

    RewriteCond %{HTTP_HOST} ^www\.domain\.de$
    RewriteRule ^(.*)$ http://www.domain.de/blog/$1 [L,R=301]

    Wird dann also $1 immer durch (.*) ersetzt? Sprich, wenn ich domain.de/xyz aufrufe werde ich zu http://www.domaind.de/blog/xyz weitergeleitet?

  4. #4 by Webmaster on February 21, 2011 - 9:30 am

    Ja, aber das Ganze könnte eine Endlosschleife produzieren, wenn du im Verzeichnis xyz die RewriteEngine nicht abschaltest…

    Eventuell:
    RewriteCond %{HTTP_HOST} ^www\.domain\.de$
    RewriteRule ^$ http://www.domain.de/blog/$1 R=301,L]

    probieren.

  5. #5 by Michael Buchholz on December 9, 2011 - 10:58 pm

    Hallo auch…

    …und erstmal vielen Dank für dieses super Howto! Das hat mir schon eine Ecke weitergeholfen, aber die Lösung habe ich leider immer noch nicht ^^

    Basis ist ein vHost mit zwei Domänen like:
    ServerName dom1.de
    ServerAlias dom2.de
    ServerAlias http://www.com1.de
    ServerAlias http://www.dom2.de

    Ich möchte jetzt folgendes erreichen:
    1. Bei Aufruf eines der drei ServerAlias’es soll immer auf dom1.de umgeleitet werden
    2. Egal, was ich hinten noch an die TLD dran hänge und ob das wirklich existiert oder nicht, soll immer auf Root umgeleitet werden

    Option 1 funktioniert so weit schmerzfrei, auch wenn ich irgend etwas hinten dran hänge, wie z.B. “www.dom2.de/blabla/blub.htm”. Das landet erwartungsgemäss immer auf “dom1.de”
    Wenn ich jetzt aber direkt z.B. “dom1.de/bla/blub.htm” aufrufe, glotzt mich ein böser 404 an *grummel*

    Meine aktuelle Anweisung lautet wie folgt, wobei ich natürlich auch schon die Reihenfolge der Conditions umgestellt hatte:

    RewriteCond %{HTTP_HOST} !^dom1\.de$ [NC]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ http://dom1.de/$1 [R=301,L,DPI]

    Irgendwie laufe ich da immer vor die Wand oder sehe den berüchtigten Wald nicht ^^

    Ich weiss natürlich, das dieses Festtackern auf die Startseite im Normalfall wohl nie vorkommt, habe aber gerade genau solch eine Aufgabe, die einmal innert 24h für ca. 3-6 Minuten erforderlich ist.

    Wäre echt schugga, wenn ich hier mal genordet werden könnte ;)

    DLzG
    Micha

  6. #6 by Michael Buchholz on December 9, 2011 - 11:00 pm

    Huppala… http://www.com1.de soll natürlich http://www.dom1.de heissen… hier fehlt ein Edit ;)

  7. #7 by Daniel on February 7, 2012 - 10:34 am

    Super Artikel und sehr gut erklärt. Danke!

  8. #8 by Yannick on March 3, 2012 - 12:48 pm

    Ich möchte eine einfache Umleitug von z.B.:
    http://www.bsp.de/produkte nach http://www.bsp.de/produkte.php einrichten.
    Dafür verwende ich folgenden Code:
    RewriteRule ^/([^\.]+)$ /$1.php [QSA]

    Aber es funktioniert nicht!

  9. #9 by Christoph on March 23, 2012 - 5:20 pm

    Danke,

    erste für einen Anfänger hilfreiche Erklärung zu dem Thema.

  10. #10 by Micha on May 7, 2012 - 11:50 am

    @Yannick:
    Mache es am besten so:
    RewriteRule ^([-a-z0-9]+)$ /$1.php

(will not be published)