Ich habe ein Problem mit mod_rewrite. Oder genauer gesagt, ich habe ein Problem mit ISAPI_Rewrite, das ein mod_rewrite Klon für IIS ist. Genauer gesagt, ISAPI_Rewrite v3 läuft auf IIS 7. Es zielt darauf ab, sich identisch mit mod_rewrite zu verhalten, also hoffe ich, dass mein Problem auch auf mod_rewrite zutrifft.URLs in IIS mit mod_rewrite bereinigen
Mein Problem läuft darauf hinaus: Ich habe ein Skript bar.php
, auf die ich über die URL foo
zugreifen möchte. Ich schreibe zuerst foo
zu bar
um. Versuchen Sie dann, die saubere URL in einen echten Dateinamen umzuwandeln.
RewriteRule ^foo$ bar
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule .* $0.php
Die RewriteCond
versagt, weil ${REQUEST_FILENAME}
sagt immer noch "foo" und nicht als "bar". Es wird nach dem ersten Neuschreiben nicht aktualisiert.
Wie kann ich das schaffen? Ich könnte das beheben, indem ich einfach RewriteRule ^foo$ bar.php
schreibe. Ich würde es jedoch vorziehen, die URL-Neuzuordnungsregeln von den Regeln für die Dateierweiterung getrennt zu halten.
Ah gut, das ist, was ich benutze barring keine besseren Antworten! –