, пожалуйста, помогите мне найти решение такого поведения, которое очень странно для меня.mod_rewrite правило, но цепочка не оставлена
Вот мой Htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^emltr\.gif$ aaa.html [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [L,QSA]
</IfModule>
Отметьте флаг L, так что я бы сказал, что, когда «GIF» правило подобрано цепь остается. Но это не так.
Запрошенный URL является «emltr.gif»
Если правило и условие «поймать всех» комментируются, то «GIF» правило правильно принято. («aaa.html» не существует, это тест для предотвращения нежелательного кругового поведения.)
Если правило «catch-all» расколото, то IT берется, а не первое правило. Почему второй, а не первый? Или иначе: почему не оставлена цепочка, даже если флаг L, а затем второе правило оценивается?
Спасибо
Вот как работает L, он действительно останавливает повторную итерацию. Вы можете использовать END вместо L, чтобы закончить процесс перезаписи немедленно, когда это правило соответствует – starkeen