500 Internal Server Error anstatt: 404 - Not Found

Lotusblüte

Lt. Commander
Registriert
Dez. 2006
Beiträge
1.135
Guten Tag allerseits,

scheinbar sind die folgenden Zeilen in meiner .htaccess Datei auf dem Server für die obige Fehlermeldung verantwortlich:

Code:
RewriteEngine On
# Don't rewrite requests to /de or other real files
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^.*/(css|scripts)
# Rewrite incoming requests to their equivalent behind /de
RewriteRule ^(.*)$ de/$1 [L,QSA]

Leider habe ich mit .htaccess nicht besonders viel Erfahrung. Weiss jemand, durch welchen Part der Fehler entsteht, dass anstatt eines 404-Fehlers (bei falschem Pfad) der 500-Fehler ausgegeben wird?


In der Logdatei des Servers findet sich folgende Fehlermeldung:
Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.

Über Hilfe wäre ich sehr dankbar :).
 
re

Lotusblüte schrieb:
RewriteRule ^(.*)$ de/$1 [L,QSA]

Da liegt IMHO der Fehler: .* matched auch dein de Verzeichnis, die Regel wird auf sich selbst angewendet, also versucht er das de Verzeichnis nach de Verzeichnis zu rewriten und dann de/de nach de usw, daher die meldung über zu tiefe Rekursion, zumindest wenn ich mir das richtig zusammenreime ^^ Das scheint ja eine Art reguläre Ausdrücke zu sein was der da benutzt, ich würd mal testweise
Code:
RewriteCond %{REQUEST_URI} !^.*/(css|scripts|de)
versuchen, ohne jetzt Plan von Mod rewrite zu haben...
 
Zurück
Oben