![]() |
Запрет компам,арбузерам и ip
Как можно через .htaccess запретить вход определенным браузерам например Mozilla/4.00 и ip допустим запретить Все ip которые начинаются на 195.189.1xx.xxx?
|
deny from 195.189.1.
по браузерам никак |
На счет ип понятно. Но вот ты говоришь по браузеру никак... А я встречал сайты на которые с компа зайти не возможно. Возможно думаю это можно обойти,но тем не менее. На фанке именно такое используется. Может скриптом можно такое реализовать?
|
скриптом можно. $_server['http_user_agent']
|
Можешь подробней написать как это реализовать? В файл нужный инклюдить или еще че.
|
Или допустим мне нужно будет два юзер агента запретить или три. Как это сделать лучше. Напиши плз подробнее.
|
В начале скрипта читаешь в переменную это значение
$user_agent=$_server['http_user_agent']; А потом ишещь вхождения нужных тебе браузеров в скрипте. Можешь сохранить в файл основные браузеры Потом разбить строку командой array explode ( string separator, string string [, int limit] ) на массив элементов и в цикле искать в переменной элементы массива - выполняя нужные тебе действия |
ни че не понял. Если я сейчас впишу то что ты написал-ничего не произойдет либо будет ошибка. Хотелось бы сделать так Если можно: файл userlog.php будет содержать Браузеры которым запрещено заходить на сайт. Вписываю в в корне index.php require('../incl/userlog.php'); и Все. Запрещенные юзер агенты отдыхают. Допустим Mozilla/4.00 и Opera/7.50. но вот вся соль в том,что я не знаю че должно быть в файле userlog.php
|
Примеры запрета браузеров по USER-AGENT через файл .htaccess можно посмотреть здесь:
_http://www.javascriptkit.com/howto/htaccess13.shtml . Все остальное (тот же блок по IP) легко реализуется через PHP. Если надо - обращайся, напишу тебе такой скриптик. ====== UPD ====== Если кому понадобиться, но лень читать весь последующий флейм/непонимание товарища TLS, вот ответы на поставленные вопросы: Блокировка по User-Agent: прописать в .htaccess Код:
RewriteEngine OnPHP код:
|
Отлично... Лучше б на испанском дал адрес. Гг.
|
Тут на этом форуме кто нить знает вообще как это делается?
|
TLS, открой глаза и перечитай инфу по линку который я дал. Блокировка браузеров делается через .htaccess. Я думаю даже не надо знать английский, чтобы понять примеры из линка.
Фильтрацию по IP можно сделать в PHP, как я сказал выше. Алгоритм примерный я тебе щас накидаю) Я себе это представляю так: 1) Получаем REMOTE_ADDR от клиента. 2) IP адрес разбиваем на октеты (регулярным выражением, или через строковые функции, неважно), т.е. получаем 4 переменные, содержащие по октету. 3) Дальше уже колдуй со своими рулесами , как душе, угодно. UPD: Да, забыл, в случае, блокировки - выдаем посетителю хедер 403 (denied) через ф-ю Header, в ином случае пользователь спокойно входит на сайт. |
1.уважаемый,мне твои линки не нужны,и рассуждать и предполагать тут тоже лишнее. Был задан конкретный вопрос,и хотелось бы получить ответ знающего человека который не будет тут фантазировать и думать,а просто тупо Даст конкретный пример такому чайнику как я.
2. Линк на ресурс который ты дал-не вижу в нем вообще смысла и не понимаю его,так Если по твоему это защита от определенных арбузеров,то че то вместо известных всему миру opera,mozilla,ie,и других не говоря уже о мобильных-я не вижу! 3. Ты считаешь Если я бы знал то,что спрашиваю-стал бы создавать тут тему? Конечно нет! Поэтому хотелось бы конкретный ответ. 4. блокировка по конкретному ip мне не нужна,так же не нужен скрипт php который будет якобы их блокировать. |
Цитата:
Цитата:
|
Я с телефона много мозгами не нашевелю. Тем более чтоб ими шевелить-нужны начальные знания.
|
RewriteEngine On RewriteCond %{HTTP_USER_AGENT} ^Mozilla/4.00 ^.* -[F,L]
Так что ли? Похоже что то не так |
Вот, накатал тебе .htaccess )
Код:
RewriteEngine OnЗ.Ы. Тут очень подробно расписано, что , как и где (теперь на русском по заявкам трудящихся ))) _http://know-how.mc3.telecom.by/SintaksisModRewrite Аффтар, неужели так трудно поюзать поиск ? ))) |
Сейчас попробую только с мозилой. Поиск юзал ,нифига хорошего не нашел
|
имхо блок по юзер агенту нуно делать пхп скриптом все таки а не хтаксессом.
да блок по айпишнику мона организовать на пхп. все в одном флаконе так сказать. нуно простенький скрипт накидать. что то типа: PHP код:
upd дорогой мой. нельзя быть настолько тупым. тебе реально трудно полистать пару справочников по РНР и самому написать этот скрипт да? тебе же тут норм люди нормально объяснили что нуно делать. неееет. тебе нуно все на блюдечке подавать. иди на север друг мой. строго и прямо на север (* |
Цитата:
|
zyhtar, протев (с)
.htaccess нормально справляется с поставленной задачей, поддерживает регулярные выражения, и много еще чего. если запрещенных браузеров несколько, то нужно использовать флаг [OR] (ИЛИ) Пример: Цитата:
Цитата:
т.е. извлекаем октеты a и b , и определяем их принадлежность к запрещенному диапазону) |
Цитата:
|
Цитата:
мозила как гуляла по сайту так и гуляет. |
справночники и книги найти всегда можно если есть инет.
Whirt естесвенно мона написать и лучше того что я накидал (* это я так просто чтобы тс ознакомился что мона сделать |
Tls, а у тебя лиса случаем не 3я стоит? Там мозилла 5.0 юзер-агент, для справки.
Щас я тебе дописываю уже твой скрипт))) Может и другим пригодится) |
Цитата:
|
Цитата:
|
Вот щас по ip ее шарахнул гг. Пока пропала. Но не надолго.
|
Вот держи кодес:
PHP код:
З.Ы. Надеюсь, вопросов больше нет? ======== UPD: ======== Цитата:
Попробуй экранировать его: Код:
RewriteEngine On RewriteCond %{HTTP_USER_AGENT} Mozilla\/4.0 RewriteRule ^.* - [F,L] |
И че мне с этим делать?
|
кидай на сервак, инклюдь в файлы, и юзай функцию которую написал Whirt.
в поисковиках можно найти лишь 90% информации (* |
В логах указан ip 86.110.176.33
Mozilla/4.0 |
ROFL одним словом))) Уже и скрипт написали тебе, пользуйся-нехочу)
Короче: кладешь скрипт на сервер, прописываешь банмаски в скрипте по образцу, который я оставил в комментах, далее : в index.php твоем пишешь: Код:
include("ipaddr_filter.php");Необходимо инклюдить скрипт ДО ТОГО, как будут отосланы хедеры, т.е. любая информация а-ля всякие сообщения на экран, итд. В общем, в самом верху инклюдь, и все будет ок. |
Цитата:
|
ребята не работает этот код. Белый экран и Все тут что бы я ни делал. Похоже экранизация помогла. Мозила пока пропала.
|
содержимое index.php в студию (с)
UPD: код рабочий, я лично тестил) |
блииин..
тс. то что написал вирт есть функция. ее вызвать нужно. |
Хм ну не индекс же думаю мой виноват. С ним как раз Все в порядке,сайтег пашет как миленький и Все инклюдиццо нормально. Возможно при копировани появились лишние пробелы в коде,такое бывает у меня часто. Вроде убрал лишние пробелы но тоже самое. Файл бы выложить как нить но почему то на этом форуме ни че нельзя выкладывать
|
ты функцию check_deny вызывал?
|
Цитата:
|
| Время: 10:16 |