nginx Хотите переписать изображения с определенного реферера, но слишком много перенаправлений - PullRequest
0 голосов
/ 01 ноября 2018

Я хочу заблокировать горячие ссылки с определенных доменов и отправить другое изображение. Вот я и нашел этот путь:

location ~ .(gif|png|jpe?g)$ {
 valid_referers none blocked mywebsite.com *.mywebsite.com;
 if ($invalid_referer) {
    return 301 /urltoimage.jpg
}}

Но таким образом я должен разрешить все сайты, кроме конкретных. Итак, я попробовал:

if ($bad_referrer) {
            return 301 https://urltoimage.png;
    }

And $ bad_referer расположен на карте:

map $http_referer $bad_referrer {
            default                  0;
            "~badreferrer1"       1;
            "~badreferrer2"       1;
    }

Но если я протестирую это и зайду на сайты горячих ссылок, я получу только «слишком много перенаправлений», и изображение не будет показано. Любые идеи, чтобы предотвратить слишком много перенаправлений?

...