Решил попробовать сделать защиту от хотлинка. Сразу же вышло решение:
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
valid_referers none blocked my.domain.ru www.my.domain.ru;
if ($invalid_referer) {
return 403;
}
expires max;
log_not_found off;
}
Однако после nginx -s reload ничего не изменилось. Пробовал вставить изображение в codepen и jsfiddle - всё работает и не блокируется.
Решил проверить работу раздела вообще и поменять домен на левый, все перечисленные файлы сразу же ушли в 403, т.е. если меняешь домен все хорошо. Однако ставишь если свой, то вставляя картинку в jsfiddle и codepen все норм.
Посмотрел потом доки NGINX написано
$invalid_referer Пустая строка, если значение поля “Referer” заголовка запроса считается правильным, иначе “1”.
Попробовал поменять на
if ($invalid_referer = "1") {, тоже результата нет.
Поясните, пожалуйста, как это вообще работает?