перед правилом, которое переписывает в dl-file.php, вы можете вставить более конкретные правила для изображений:
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(wp-content/uploads/.*\.png)$ $1 [L]
RewriteRule ^(wp-content/uploads/.*\.jpg)$ $1 [L]
RewriteRule ^(wp-content/uploads/.*\.gif)$ $1 [L]
RewriteRule ^wp-content/uploads/(.*)$ dl-file.php?file=$1 [QSA,L]
Каждое из трех правил имеет одинаковую структуру, я объясню первое:сопоставьте что-либо в загрузках, которые заканчиваются на .png со скобками, вы сохраняете весь путь в переменную $ 1.
, правая часть правила дает эту переменную, поэтому, если вы посмотрите наодин конкретный URL-адрес сводится к следующему:
Rewrite wp-content/uploads/some.png wp-content/uploads/some.png [L]
L в конце говорит механизму перезаписи, что это последнее правило, которое нужно применить.так что если это совпадает, процесс перезаписи заканчивается здесь, ваше png-изображение обслуживается.