То, что происходит во второй раз (после того, как URI был переписан в /photo_render.php
), применяется второе правило, поэтому /photo_render.php
переписывается в index.php
. Вам нужно добавить несколько условий, когда вы пытаетесь сопоставить что-то вроде .
или .*
. Это должно работать:
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^member/photo/render_fast(.*) /photo_render.php?r=$1 [L]
# otherwise forward it to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]
Обратите внимание, что это также не удастся, если по какой-то причине у вас нет photo_render.php.