Como remover uma barra final de REQUEST_FILENAME para comparação em uma condição de reescrita?

1

Se eu solicitar a página link e usar essas regras de reconfiguração:

# See if the requested URL is in our cache. If so, serve it
RewriteCond /var/www/cache%{REQUEST_FILENAME}.html -f
RewriteRule (.*) /var/www/cache/$1.html [L,QSA]

O Apache tenta encontrar um arquivo chamado "frogs / .html", que obviamente falha. Desejo usar% {REQUEST_FILENAME} sem a barra final, para procurar e exibir "frogs.html".

Como posso fazer isso?

    
por Nick 17.03.2011 / 13:39

1 resposta

2

EDITAR:

Teste isso. Deve remover uma barra:

RewriteCond /var/www/cache/$1.html -f
RewriteRule ^/(.+)/*$ /var/www/cache/$1.html [L, QSA]

O motivo é que você pode voltar a referência do regex entre parênteses em um RewriteRule do RewriteCond. Consulte os documentos do mod_rewrite para obter mais informações sobre o fluxo de referência anterior.

    
por 17.03.2011 / 13:55