"We are back" « oc.at

mod_rewrite problem mit domain.at auf www.domain.at umleitung

BiG_WEaSeL 02.01.2008 - 09:41 1074 9
Posts

BiG_WEaSeL

Elder
-
Avatar
Registered: Jun 2000
Location: Wien
Posts: 8346
Hallo!

Ich hab gerade folgende Voraussetzungen:

Ich habe mir untenstehende Rule gebastelt die alles was nicht www.domain.at odere mobil.domain.at heisst auf www.domain.at umgeleitet wird.
Code: PHP
RewriteCond %{HTTP_HOST} !(^www\.domain\.at$|^mobil\.domain\.at$)
RewriteRule ^(.*)$ http://www.domain.at/$1 [R=301,L]

Mein Problem:

Wenn ich "domain.at/cms" (per .htaccess passwortgeschütztes verzeichnis) aufrufen möchte, und erwarte auf www.domain.at/cms umgeleitet zu werden, bekomm ich einen 401er error. Bei nicht passwort-geschützten Verzeichnissen funktioniert alles einwandfrei.

Wo liegt der Hund begraben?

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25517
bitte den inhalt von der .htaccess auch posten.

BiG_WEaSeL

Elder
-
Avatar
Registered: Jun 2000
Location: Wien
Posts: 8346
AuthName "geschuetzter_Bereich"
AuthType Basic

AuthUserFile /home/pfad/zum/pw/file
<Limit GET PUT>
require valid-user
</Limit>

COLOSSUS

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12131
Kurze Zwischenfrage: Sind http://www.domain und mobil.domain unterschiedliche HTTP/1.1 vhosts?

BiG_WEaSeL

Elder
-
Avatar
Registered: Jun 2000
Location: Wien
Posts: 8346
nein, warum fragst du?

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25517
hab deine konfiguration mal getestet. funktioniert bei mir einwandfrei.. nur ein kleiner fehler im rewrite-code:
Code:
RewriteRule ^(.*)/$ [url]http://www.domain.at/[/url]$1 [R=301,L]
getestet wurde unter apache 2.2.4 unter win xp. bist du dir sicher, dass mit deinem geschützten verzeichnis alles passt? funktioniert es wirklich wenn du die rewrite-engine ausschaltest?

edit: ich vermute auch das es am browser liegen könnte. ganz unproblematisch ist es ja nicht, da ja vorher authentifiziert wird und dann weitergeleitet. bei mir funktionierts dennoch mit firefox, opera und ie6.

BiG_WEaSeL

Elder
-
Avatar
Registered: Jun 2000
Location: Wien
Posts: 8346
1. ja ohne rewrite funktioniert es, seit jahren
2. wenn ich den slash hinzufüge so wie du es gemacht hast wird nicht mehr umgeschrieben.
3. apache 1.3.33
4. ich bin mir nicht sicher ob ich dich, oder du mich richtig verstanden hast (wegen deinem satz "zuerst authentifizieren dann rewriten"), bei mir sieht es so aus (verzeichnis-struktur):

/.htaccess (das ganze rewrite zeug)
/cms/.htaccess (nur der zugangscheck)

mat

Administrator
Legends never die
Avatar
Registered: Aug 2003
Location: nö
Posts: 25517
wird wohl an der alten apache-version liegen. würde mir definitiv überlegen umzusteigen, nicht nur um dein jetziges problem zu lösen.

BiG_WEaSeL

Elder
-
Avatar
Registered: Jun 2000
Location: Wien
Posts: 8346
am jetzigen server kann ich apache nicht updaten, ist nur ein simpler webhost, hab aber eh vor zu wechseln wenn ich etwas passendes gefunden habe.

COLOSSUS

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12131
Das waere wenn dann aber ein Bug in dieser Release - immerhin darf das AccessFile erst dann gelesen und evaluiert werden, wenn der Directory Scope zutrifft, was definitiv erst NACH dem Redirect der Fall ist.

Die VHOST-Frage habe ich gestellt, weil ich spaetestens dann mit RedirectMatch statt Rewrite{Cond,Rule} arbeiten wuerde.
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz