htacacess: Ordner auf Subdomain leiten
Bruzzler
- php
Hi zusammen,
ich hab eine htaccess erstellt, aber ich bekomm immer einen Fehler ausgegeben. und zwar will ich einen Ordner auf meiner Domain www.meinedomain.de/otten auf otten.meinedomain.de weiterleiten.
Ich hab folgende htacces:
RewriteEngine on
RewriteCond %{HTTP_HOST} otten.meinedomain.de $ [NC]
RewriteCond %{REQUEST_URI} !/otten/
RewriteRule ^(.*)$ otten/ [L]
Ich bekomm als Fehler:
500 Internal Server Error
Kann mir jemand bitte helfen?
Danke und Grüße
Bruzzler
Hat sich erledigt:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^desktop.xyz.de$
RewriteCond %{REQUEST_URI} !/desktop/
RewriteRule (.*) /desktop/$1 [L]
das war die Lösung.
Danke
Hat sich erledigt:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^desktop.xyz.de$
RewriteCond %{REQUEST_URI} !/desktop/
RewriteRule (.*) /desktop/$1 [L]das war die Lösung.
Danke
Hm jetz bin ich doch nochmal auf ein Problem gestoßen:
Wenn ich in die htaccess folgendes schreibe:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^otten\.meinedomain\.de$
RewriteCond %{REQUEST_URI} !/otten/
RewriteRule (.*) /otten/$1 [L]
RewriteCond %{HTTP_HOST} !^www\.meinedomain\.de$
RewriteRule ^(.*)$ http://www.meinedomain.de/$1 [L,R=301]
funktioniert zwar die weiterleitung von meinedomain.de auf www.meinedomain.de - die domain otten.meinedomain.de wird allerdings weitergeleitet zu dem Ordner meinedomain.de/otten.
Ohne die letzten beiden Zeilen in der htaccess wird die subdomain otten.meinedomain.de richtig angezeigt... komisch oder???
Weiss jemand Rat?
Danke und Grüße
Bruzzler
Hallo,
du widersprichst dir irgendwie. Und damit meine ich nicht das hier:
Hat sich erledigt:
das war die Lösung.
Hm jetz bin ich doch nochmal auf ein Problem gestoßen:
Du hast zwei voneinander unabhängige Regeln. Eine, die alle Zugriffe auf den Hostnamen "otten.example.org", die NICHT auf das Verzeichnis /otten zielen, auf ebendieses Verzeichnis /otten zuzüglich des ursprünglichen Pfades umleitet:
RewriteCond %{HTTP_HOST} ^otten.example.org$
RewriteCond %{REQUEST_URI} !/otten/
RewriteRule (.*) /otten/$1 [L]
Also zum Beispiel http://otten.example.org/vier/dummy.html auf /otten/vier/dummy.html
In deinem Originalposting wolltest du genau das Gegenteil:
> > und zwar will ich einen Ordner auf meiner Domain www.example.org/otten auf otten.example.org weiterleiten.
Und außerdem hast du eine Regel, die alle Zugriffe, bei denen der Hostname NICHT www.example.org lautet, mit einem externen HTTP-Redirect auf ebendiesen Hostnamen umleitet. Das gilt natürlich auch für den Zugriff auf deine Subdomain.
> ~~~apache
RewriteCond %{HTTP_HOST} !^www\.example\.org$
> RewriteRule ^(.*)$ http://www.example.org/$1 [L,R=301]
die domain otten.example.org wird allerdings weitergeleitet zu dem Ordner example.org/otten.
Das kann nicht sein - sie wird durch die obigen beiden Zeilen zu http://www.example.org/* umgeleitet (wobei der Stern den ursprünglichen lokalen Pfad darsellen soll).
Weiss jemand Rat?
Weißt du denn, was du wirklich willst? Ich blick da gerade nicht mehr durch.
Ich möchte dir aber einen guten Rat geben: Benutze für Beispiele bitte entweder deine eigenen Domainnamen, oder die, die extra dafür vorgesehen sind. Aber bitte keine erfundenen Namen, die tatsächlich existieren!
Und noch was: Wieso stellst du diese Frage im Themenbereich PHP ein, obwohl sie mit PHP nicht das geringste zu tun hat - und markierst auch noch die Apache-Konfigurationsdirektiven als PHP. Das soll einer verstehen ...
Ciao,
Martin