Was bedeutet diese mod_rewrite-Regel?

960
cfischer

Aus irgendeinem Grund verursacht diese Regel Verwirrung in allen nachfolgenden Regeln (keine der Themenarbeit). Was bedeutet es genau?

RewriteRule . /index.php [L]

1
Es macht keinen Sinn, zumindest für mich, da ich mit den Regeln zum Umschreiben ein wenig verrostet bin. Ich weiß, dass [L] es nur anweist, die Verarbeitung zu stoppen, nachdem diese Regel ausgeführt wurde. Wenn ich eine Vermutung hätte nehmen müssen, obwohl es fast so ist, als würde jemand versuchen, alle Anfragen in das Basisverzeichnis von host in index.php zu schreiben ... Mike Keller vor 12 Jahren 0
Diese Zeile alleine macht wenig Sinn (höchstwahrscheinlich haben Sie 500 Serverfehler, wenn es nur eine Umschreibungszeile geben würde). Vor dieser Zeile müssen eine oder mehrere `RewriteCond'-Zeilen stehen. LazyOne vor 12 Jahren 0

2 Antworten auf die Frage

1
music2myear

Diese Regel soll den "index.php" -Teil einer sichtbaren URL verbergen. Wenn Sie sich unter http://www.somesite.com/index.php als Arbeits-URL befinden, zeigt diese Regel an, dass der Browser http://www.somesite.com/ anzeigt .

Nun, es ist wahrscheinlich andersherum zu handeln. Wenn der Server eine Anfrage http://www.somesite.com/ erhält, wird er http://www.somesite.com/index.php verwendet, nur das letzte Bit wird nicht angezeigt.

Es gibt andere Möglichkeiten, dies zu tun, die möglicherweise effektiver sind und weniger Probleme verursachen, wie Sie beispielsweise auftreten. Ich habe eine Google-Suche nach " mod rewrite RewriteRule. /Index.php " durchgeführt, um diese Informationen zu erhalten, und die meisten Seiten scheinen einige nützliche Vorschläge für bessere Möglichkeiten zu haben.

0
tking

Ich glaube, es leitet es an root weiter. Wenn Sie also auf www.example.com gehen, wird www.example.com/index.php nicht angezeigt. Hilfreich für SEO-Zwecke.

Ist das ein Wordpress-Setup?

T sein ist ein guter Artikel über auf Stackoverflow, die dies erklärt.