Блокировка в PHP доступа на сайт по HTTP_USER_AGENT

А
На сайте с 29.10.2016
Offline
63
522

Здравствуйте. Есть следующая конструкция, которая блокирует конкретный  HTTP_USER_AGENT на сайте:

if( strpos( $_SERVER['HTTP_USER_AGENT'], 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.5359.71 Safari/537.36' ) !== FALSE){
exit();
}

Подскажите, пожалуйста, как в этом коде сделать чтобы версия Chrome - была переменной

Chrome/108.0.5359.71

т.е. чтобы и такие блокировались и другие по мере выхода новых версий:

Chrome/107.0.5304.110

Остальные части USER_AGENT  будут неизменными.

P.S. на конкретные разделы сайта лезут сотнями такие "товарищи".

Может есть способ как это реализовать в .htaccess

Следующий код у меня тоже работает, но не знаю как сделать переменным версию Chrome:

<If "%{HTTP_USER_AGENT} == 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.5359.71 Safari/537.36'">
    Require all denied
</If>


D.iK.iJ
На сайте с 26.05.2013
Offline
229
#1

Как вариант, просто искать в юзерагенте кусок строки без версии браузера. Я вот ниже набросал примерный код. Если что, не проверял. 

if (substr_count($_SERVER['HTTP_USER_AGENT'], 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/')==1) {

Ну или гуглите регулярки. А может кто-то и на форуме умеет их быстро писать.

Адаптивный дизайн в 2 строчки ( https://dikij.com/wm/adaptaciya-saytov.php ). + Принимаю заказы любой сложности ( https://searchengines.guru/ru/forum/926323 ). 💎 Еще я делаю классные кулоны с опалами ( https://mosaicopal.ru/ ).
LEOnidUKG
На сайте с 25.11.2006
Offline
1755
#2
if (preg_match('@Mozilla/5\.0 \(Macintosh; Intel Mac OS X 10_15_7\) AppleWebKit/537\.36 \(KHTML, like Gecko\) Chrome/(.*?) Safari/537\.36@smi',$_SERVER['HTTP_USER_AGENT']))
{
	exit();
}
✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
А
На сайте с 29.10.2016
Offline
63
#3
Спасибо Вам большое за помощь!
K
На сайте с 03.01.2022
Offline
24
#4

это очень тормозной способ защиты от ддос и другого спамного трафика, который может приводить к отказам в обслуживании

нужно действовать хотя бы через .htaccess и mod_rewrite

LEOnidUKG
На сайте с 25.11.2006
Offline
1755
#5
Наталья А. #:

это очень тормозной способ защиты от ддос и другого спамного трафика, который может приводить к отказам в обслуживании

нужно действовать хотя бы через .htaccess и mod_rewrite

Можно побольше доводов, про "ОЧЕНЬ" почему apache будет быстрее работать, чем PHP?

Я уж промолчу, что apache будет реагировать на все типы файлов, если nginx не подключен.

fliger
На сайте с 17.09.2015
Offline
112
#6
Алексанр :
Может есть способ как это реализовать в .htaccess
SetEnvIfNoCase User-Agent "^Mozilla/5\.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537\.36 (KHTML, like Gecko) Chrome/[\d\.]+ Safari/[\d\.]+$" Macintosh
Order Deny,Allow
Deny from env=Macintosh
А
На сайте с 29.10.2016
Offline
63
#7
fliger #:
SetEnvIfNoCase User-Agent "^Mozilla/5\.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537\.36 (KHTML, like Gecko) Chrome/[\d\.]+ Safari/[\d\.]+$" Macintosh
Order Deny,Allow
Deny from env=Macintosh

Спасибо большое!

samimages
На сайте с 31.05.2009
Offline
427
#8
Почему не strpos?.. я так понял ТС-у версии в принципе не нужны, он до хрома целиком доклепался.
Опыт как иммунитет — приобретается в муках! Хостинг: экономия до 1300 руб + домен в подарок ( https://clck.ru/XLscf ) / Аудит семантики от 15К [долго] - ЛС
Д
На сайте с 01.04.2012
Offline
145
#9
if(preg_match('#chrome#i', $_SERVER['HTTP_USER_AGENT'])) 
{
header('HTTP/1.1 404 Not Found');
die();
}
VPN/SSD VPS в любой локации на выбор ( https://cp.inferno.name/cart.php ). Скидка 25% для новых заказов по промо-коду ZIMA2025

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