Я написал базовый c редиректор http referer, который выглядит примерно так:
if ($http_referer ~* (google|yahoo|bing|duckduckgo)) { return 301 https://altavista.com; }
Моя цель примерно такая
if ($http_referer ~* (google|yahoo|bing|duckduckgo)) {
add $x-forwarded-for bad_ips.txt; <-- this line is the question (x-forwarded-for because it's behind cloudflare)
return 301 https://altavista.com;
}
if ($bad_ip) {
return 301 https://altavista.com;
}
Есть ли способ сделать этот? По сути, цель состоит в том, что если вас перенаправили с веб-сайта из черного списка, я хотел бы добавить ваш IP-адрес в список перенаправления.
Примечание: это не нужно делать только в nginx; использование других технологий в дополнение к nginx допустимо, если они бесплатны.
Обратите внимание, что мой сайт использует cloudflare, поэтому вместо запрета простого IP-адреса он должен использовать адрес x-forwarded-for, иначе я просто запрещаю cloudflare.
Спасибо