2017-02-02 6 views
2

Ich habe folgendes in meiner .htaccess-Datei:Ignorieren slash von RewriteCond und RewriteRule Hinter

RewriteCond %{REQUEST_METHOD} GET 
RewriteCond %{DOCUMENT_ROOT}/cached/%{REQUEST_URI}\.html -f 
RewriteRule .* cached/%{REQUEST_URI}\.html [L] 

Ich habe eine URL blah.com/a/

Und ich habe eine Datei puffert/a.html

wie kann ich meine .htaccess sagen dem Schrägstrich zu ignorieren, um zu suchen und zu zeigen a.html anstelle eines/.html

Hinweis: Entfernen der Schrägstrich aus der URL keine Option, da der URL klopfen Seeschwalben sind bereits festgelegt.

Antwort

2

Dies liegt daran, dass% {REQUEST_URI} dem Ziel den folgenden Schrägstrich hinzufügt, der auf ein ungültiges uri /file/.html verweist. Um dies zu beheben, müssen Sie stattdessen eine Rückreferenz verwenden.

RewriteCond %{DOCUMENT_ROOT}/cached/$1.html -f 
RewriteRule ^(.*?)/?$ /cached/$1.html [L] 
Verwandte Themen