Nginx блокировка пустых user_agent в map

1 23
V
На сайте с 28.01.2020
Offline
25
#21
webinfo #:

А может быть, он всё же не пустой в Вашем тесте?

Пустой юзерагент, судя по логам. 

К слову, даже в конструкции if ( $http_user_agent ~* (^$|Bot1|Bot2|Bot3)  ) { return 444; }
регулярка ^$ не работала, не блокировала пустого юзерагента.
А вот так работало if ( $http_user_agent = "" ) { return 444; }

V
На сайте с 28.01.2020
Offline
25
#22
livetv #:
Попробуйте "" 1 в map
То что надо!

W1
На сайте с 22.01.2021
Offline
306
#23
Vaily #:
регулярка ^$ не работала, не блокировала пустого юзерагента

Как раз вариант
 ~* (^$|Bot1|Bot2|Bot3)  ) { return 444; }
неправильный, потому что он не соответствует пустому юзерагенту, поскольку в этой конструкции есть пробел.

Поправил свой коммент выше.

Мой форум - https://webinfo.guru –Там я всегда на связи
V
На сайте с 28.01.2020
Offline
25
#24
Ребята, спасибо за вашу помощь и уделенное время!
pegs
На сайте с 07.06.2007
Offline
658
#25
Vaily #:
Во всех вариантах ответ 200 для пустого юзерагента.

так может до условия

Vaily #:
if ($limit_bots = 1) { return 444; }
дело не доходит?
«Палата номер 6» ищет своего Главврача: https://www.palata6.ru/
V
На сайте с 28.01.2020
Offline
25
#26
pegs #:

так может до условия

дело не доходит?
Другая причина, как оказалось. Помог вариант предложенный livetv
Nginx блокировка пустых user_agent в map - Администрирование серверов - Сайтостроение - Форум об интернет-маркетинге - Страница 2
Nginx блокировка пустых user_agent в map - Администрирование серверов - Сайтостроение - Форум об интернет-маркетинге - Страница 2
  • 2021.11.12
  • searchengines.guru
Доброго времени, Раньше блокировка была через оператор if Сейчас через директиву map В map, как правильно заблокировать пустой юзерагент
1 23

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий