hotti: mod_rewrite - der Endlosschleife entkommen

Beitrag lesen

hi,

Jetzt ist es aber so, dass ja ein Nutzer auch
http://localhost/index.php/matlab2
eingeben kann. Und das bleibt in der Adressleiste stehen. Das wäre dann wieder doppelter Content :(

Wenn das so ist, tut Dein index.php nicht so wie es soll:

Doch, es gibt die index.php/matlab2 ja.

Mit den entsprechenden Conditions sollte eine Regel reichen

RewriteRule ^     /index.php [L]

Erstelle eine Tabelle, die alle erlaubten URLs enthält (ohne QS). /index.php darf nicht in der Tabelle enthalten sein, also etwa so

/
/foo
/bar/
/foo/bar

index.php prüft anhand der Tabelle und wenn dann jemand ein /index.php/y/x requestet, sollte index.php einen Status: 404 Not Found ausgeben. Ein Request

/foo/bar?x=y

wäre erlaubt, x=y bekommst Du auch ohne [QSA] (weil in o.g. Regel index.php selbst keine Parameter hat, wo die anderen angehängt werden müssten).

Was ist daran so schwierig?

Hotti