LINUX.ORG.RU
ФорумAdmin

Отрезать определенные и оставить юзеров с пустыми полями

 ,


0

2

Доброго вечера, проблема в том что при отсутсвие реферрера работает только для firefox , а остальные не пашут . Переменная $bad_referrer это просто map на определенные имена сделана

Нужно отрезать всех реферреров, кроме определенных и у которых реферрер значение пустое (типа приставки,Smart TV и тд и тп) .

 if ($http_referer ~ '^$') {
    set $bad_referer 0;
 }
 if ($bad_referer) {
    return 444;
  }

★★★★★

Последнее исправление: pinachet (всего исправлений: 2)
Ответ на: комментарий от hotpil

Нужно отрезать все реферреров кроме определенных и у которых реферрер значение пустое (типа приставки,Smart TV и тд и тп) .

pinachet ★★★★★
() автор топика
Ответ на: комментарий от pinachet

Нужно отрезать все реферреров

Наверное, вы хотите резать соединение всем, у кого рефер пустой или не совпадает с вашим списком. Так?

anonymous
()
Ответ на: комментарий от anonymous

Кто не совпадает со списком только резать ! Пустых и из списка оставлять

pinachet ★★★★★
() автор топика
Ответ на: комментарий от anonymous

У меня аналогично сделано , множественный if сделал через set . В данном случае всех пустых пропускать , но работает только с firefox

if ($http_referer ~ '^$') {
    set $bad_referer 0;
 }
pinachet ★★★★★
() автор топика
Ответ на: комментарий от pinachet

множественный if сделал через set

Не надо так.

В данном случае всех пустых пропускать , но работает только с firefox

Ну чудес не бывает, смотри в логах с каким рефом идут другие браузеры. А еще не надо отдавать 444, лучше 403. https://habr.com/ru/post/415565/

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.