Вот мой код:
RewriteCond %{REQUEST_FILENAME} !-f RewriteCond application/public/%{REQUEST_FILENAME} -f RewriteRule (.*) application/public/$1 [L]
Я хочу сделать выражение:
{REQUEST_FILENAME}
не существует И если существует application/public/%{REQUEST_FILENAME}
file application/public/%{REQUEST_FILENAME}
, переписывайте Примеры результатов:
Что такое правильный код для этого выражения? Мне кажется, мне нужно изменить строку:
RewriteCond application/public/%{REQUEST_FILENAME} -f
Но у меня нет кровавой идеи, как …
Полный список .htaccess:
RewriteEngine on RewriteRule style,(.+).css tmp/merged/css,$1 [L,QSA] RewriteRule script,(.+).js tmp/merged/js,$1 [L,QSA] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond application/public/%{REQUEST_FILENAME} -f RewriteRule (.*) application/public/$1 [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteRule (.*) index.php?input=$1 [L,QSA]
(Извините за мой английский)
я нашел небольшое обходное решение, но это не элегантное решение 🙁
RewriteEngine on # Access to files in ./application/public RewriteCond %{REQUEST_FILENAME} !-f RewriteRule (.*) application/public/$1 [DPI] RewriteCond %{REQUEST_FILENAME} !-f RewriteRule application/public/(.*) $1 [DPI] # Main rewrite RewriteCond %{REQUEST_FILENAME} !-f RewriteRule (.*) index.php?input=$1 [L,QSA,DPI]