Seite 1 von 1

Probleme bei Weiterleitung ohne www

Verfasst: 01.03.2009, 23:08
von cardoso
Hallo,
ich habe einen Ordner der wie folgt erreicht wird.
https://domain.de/ordnerxyz

Und diesen wollte ich nun wie folgt mittles .htaccess
weiterleiten komme dabei aber nicht weiter voran.
Die Ziel-URL soll wie folgt lauten.
https://www.domain.de/ordnerxyz

Wie man eine ganze URL auf "www" weiterleitet habe ich
gefunden, jedoch nicht wie es nur mit einem Ordner geht.

Besten Dank im Voraus

Verfasst:
von

Verfasst: 02.03.2009, 02:18
von scysys
Also wenn du doch weißt wie es mit einer ganzen Domain geht, dann weißt du auch wie es mit einem Ordner geht.

Häng hinter dem .de" das /ordner an in beiden zeilen und es werden nur ordner umgeleitet.

Einfach mal genau draufschauen dann kommst du ganz alleine drauf

Verfasst: 02.03.2009, 07:57
von CIX88
https://www.abakus-internet-marketing.d ... 69276.html
Vielleicht so wie im letzten Beitrag.

Verfasst: 02.03.2009, 14:08
von cardoso
Na so habe ich es auch versucht, dazu habe ich den folgenden Code in die .htaccess Datei in diesem Ordner eingebunden, funktioniert allerdings nicht.

RewriteEngine On

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

Bloß wie gesagt, da passiert rein gar nichts.

Verfasst: 03.03.2009, 07:40
von CIX88
Jo deswegen hab ich ja ein Beispiel gepostet :)
Punkte im String müssen mittels \ maskiert werden.

falsch => ^domain.de/ordnerxyz$ [NC]
richtig => ^domain\.de/ordnerxyz$ [NC]

Wenn schon die Domain per Hand eintragen, dann in etwas so:

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

Verfasst: 03.03.2009, 10:26
von Mork vom Ork
CIX88 hat geschrieben:Wenn schon die Domain per Hand eintragen, dann in etwas so:

RewriteCond %{HTTP_HOST} ^domain\.de/?(.*)$ [NC]
RewriteRule ^(.*)$ https://www.domain.de/$1 [R=301,L]
Kinners, informiert euch doch bitte, womit ihr arbeitet, bevor ihr etwas anwendet, anstatt blind in der Gegend rumzupfuschen. Natürlich kann man nicht alles wissen, aber sich gar nicht erst mit den Sachen beschäftigen wollen, lieber andere machen lassen, und obendrein den Kram auch noch als Tipp verkaufen - nee, sorry.

HTTP_HOST ist eine Variable, dessen Inhalt aus dem Host:-Feld der Anfrage stammt. Wenn man sich ein klein wenig mit dem ganzen Internet-Kram auskennt, sollte man wissen, was ein Host ist (das meine ich mit „nicht damit beschäftigen wollen“). Ein Host ist (hier) ein Webserver, gekennzeichnet wird er durch die Domain. In HTTP_HOST befindet sich dementsprechend die Domain und nichts anders. Es vollkommen sinnlos, HTTP_HOST auf irgendwelche anderen Bestandteile als die Domain prüfen zu wollen.

Eine Anfrage von example.com nach www.example.com weiterleiten:

Code: Alles auswählen

RewriteCond %{HTTP_HOST} =example.com
RewriteRule (.*) http://www.example.com/$1 [R=301,L]
Selbst wer sich die Bedienungsanleitung zu RewriteRule nur ganz kurz Gemüte führt, sollte feststellen, dass der erste Parameter ein Muster ist, das mit dem URL-Pfad verglichen wird. Daraus lässt sich zumindest im Ansatz etwas schließen, was schlussendlich zu folgendem Code führen sollte:

Code: Alles auswählen

RewriteCond %{HTTP_HOST} =example.com
RewriteRule ^(ordner($|/.*)) http://www.example.com/$1 [R=301,L]
Nicht klar ist mir allerdings, warum nur dieser eine Ordner von der www-Geschichte betroffen sein soll. Wenn man sich schon auf eine Domain konzentriert, dann sollten doch prophylaktisch alle Pfade behandelt werden, nicht nur ein einzelner.

Verfasst: 04.03.2009, 07:30
von CIX88
> informiert euch doch bitte
Richtig, man könnte auch nur den bestimmten Ordner abfragen, wenn dieser nur von der Umleitung betroffen ist. Dann muss man gar nicht auf HTTP_HOST zugreiffen.

Verfasst: 04.03.2009, 11:20
von Mork vom Ork
CIX88 hat geschrieben:Richtig, man könnte auch nur den bestimmten Ordner abfragen, wenn dieser nur von der Umleitung betroffen ist. Dann muss man gar nicht auf HTTP_HOST zugreiffen.
Wenn www- und nicht-www-Domain getrennt geführt werden, ja, aber augenscheinlich landen beide Anfragen in denselben Verzeichnissen. In dem Falle führt eine Weiterleitung ohne Host-/Domain-Prüfung in eine Endlosschleife.