Ответ 1
RewriteEngine On
RewriteCond %{REQUEST_URI} \.(jpg|jpeg|gif|png|ico)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .*$ /no_picture.png [L]
Позвольте разбить его на то, что означает каждая строка.
RewriteCond %{REQUEST_URI} \.(jpg|jpeg|gif|png|ico)$ [NC]
Убедитесь, что запрошенный файл имеет расширение файла в круглых скобках ()
. В этом случае мы тестируем, заканчивается ли имя файла в .jpg
, .jpeg
, .gif
, .png
или .ico
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
Убедитесь, что файл отсутствует, а также не каталог.
RewriteRule .*$ /no_picture.png [L]
Если запрашиваемый ресурс/файл передает все те тесты, то это изображение, которое не существует. Поэтому верните изображение no_picture.png
в браузер. Это сохранит имя файла. Если вы хотите перенаправить имя файла no_picture.png
, измените [L]
на [R]