Добрый день.
Сам конфиг, блокирующий картинки хотлинка с сайтов из "черного" списка:
map $http_referer $bad_referer {
hostnames;
default 0;
"~site.ru" 1;
"~test.ru" 1;
}
location ~* ^/secret-files/
{
internal;
if ($bad_referer)
{
rewrite ^ /images/direct-url.gif last;
}
root /inetpub/wwwroot/qwerty.ru;
}
Пока запрашиваемая картинка на моем сервере существует, правило отрабатывает верно и пользователи видят заглушку direct-url.gif, но если изображение на моем сайте удалить, то они видят сообщение, которое отдает скрипт:
<?php
...
header ("X-Accel-Redirect: /image-not-found.gif");
?>
Не понимаю, почему дело доходит до скрипта, если nginx видя хотлинк сразу должен отдать заглушку.