Необходимо модифицировать url перед обработкой его роутером:
Например, запрашивается url:
/img/100x100/images/ddde721137e7ea40a5754b70037425bc.jpg
нужно преобразовать его в
/img?w=100&h=100&src=images/ddde721137e7ea40a5754b70037425bc.jpg
Если ставлю [L,R=302], то все работает, а если только [L] в роутер отправляется исходный url, что непонятно.
По идее ведь он должен преобразоваться и дальше правила не должны срабатывать.
Важно, чтобы правило с исключением из обработки статических картинок тоже работало.
Вот полный код .htaccess:
RewriteEngine on
RewriteBase /
#/img/40x40/images/article/631384704403-5354074831.jpeg
RewriteRule ^img/(\d+)x(\d+)/(.+)/?$ img?w=$1&h=$2&src=$3 [L,R=302]
#Excluding images
RewriteRule .*\.(jpg|gif|png|svg|css|js|kml|fb2|ico|html|xml|txt)$ - [L]
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ [NC,L]
RewriteRule ^.*$ index.php [NC,L]