[apache] kann nicht auf /xyz verweisen da apache es automatisch zu /xyz/ macht

mercsen

Lt. Commander
Registriert
Apr. 2010
Beiträge
1.659
Moin!

Da SO gerad down ist wende ich mich mal vertrauensvoll an lokalen experten :D

hab gerade nen neuen server aufgesetzt und nichts anders gemacht als die 100 male davor. Aber irgendwie haut hier was mit apache net hin.

ich will ganz simple das /login verdeckt auf /login/login.php verweist, die URL also nicht geändert wird.

dazu nutze ich folgende htaccess

Code:
Options +FollowSymLinks  -MultiViews
RewriteEngine On
RewriteBase /
RewriteRule ^login$ /login/login.php [L,R]

der kenner wird jetzt sagen das dass R Flag dafür sorgt das eben nicht verdeckt weitergelietet wird. Lasse ich es aber weg sendet apache beim aufruf von /login immer ein 301 mit der neuen URL /login/ was schlicht und ergreifend falsch ist.

das allerdings geht beides problemlos:

Code:
Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /
RewriteRule ^login.php$ /login/login.php [L]
RewriteRule ^login/$ /login/login.php [L]

aber ich will auf keinen fall ein verzeichniss auf eine datei zeigen lassen da auf dem ding später ne REST API laufen muss.

ich habe bereits einige fehlersuche betrieben und überall Multiviews exolizit ausgeschaltet (sogar zum testen mal angemacht...) aber in der offiziellen dokumentation steht ja das es eh aus is wenn man es nicht wirklich einschaltet :-/

selsbt in untervezeichnissen kann ich etwas verwenden wie

Code:
RewriteRule ^/login/blabla$ /seit/datei.php [L]

nur nicht im root?

jemand ne idee was hier schief läuft?

besten dank schonmal im voraus! :)

edit:
ahja......
dadurch das es den ordner /login/ gibt kann apache das wohl nicht verarbeiten wenn ich auf die "datei" /login zu greifen will. /logins => /login/login.php ist kein problem.
 
Zuletzt bearbeitet:
Zurück
Oben