На моих сайтах если и стоит защита от флуда, то там при обращении в базу сохранятеся IP и время, при повторном обращении идет проверка и сравниваются IP и Время (ключевую роль играют минуты) Но это все тоже обращение к базе данных!!!, а значит не получиться проверить повтор, не обращаясь к серверу. Слышал что куки могут помочь.
Хотел почитать, так и не смог найти что читать.
Спустя 8 часов, 10 минут, 45 секунд (18.08.2010 - 22:16) Nord написал(а):
Если захотят устроить dos-атаку, то они не будут нажимать F5... Да и куки можно подменить/не передавать
Спустя 31 минута, 19 секунд (18.08.2010 - 22:47) FatCat написал(а):
Цитата (maximka787 @ 18.08.2010 - 15:05) |
Но это все тоже обращение к базе данных!!! |
Ну да, обращение. А зачем восклицательные знаки?
Таблица сессий хранит только активных посетителей за последний отрезок времени, устаревшие сессии удаляются. Значит таблица максимум на несколько тысяч строк, в реале несколько десятков. Селект для получения прошлого обращения и апдейт для записи текущего обращения - два запроса общим временем 0,001 секунды максимум, это такая крохотная нагрузка, которой можно пожертвовать.
А когда бот-парсер мало того что запрашивает по 15-20 генераций страниц в секунду, так еще и контент тырит и на сплоги нарезает - оно что, лучше?
Спустя 5 часов, 51 минута, 31 секунда (19.08.2010 - 04:38) maximka787 написал(а):
Цитата (FatCat @ 18.08.2010 - 19:47) |
А когда бот-парсер мало того что запрашивает по 15-20 генераций страниц в секунду, так еще и контент тырит и на сплоги нарезает - оно что, лучше? |
тут я не понимаю уже
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
Спустя 12 дней, 8 часов, 53 секунды (31.08.2010 - 12:39) maximka787 написал(а):
Не знал куда вписать. скажите а эта конструкция вообще играет какую нибудь роль в защите? ведь подделать ее нельзя же. и соответственно кроме как из браузера запросы к сайту выполняться не будут?
или я что-то не понял?
if (!ereg('http://mysite.ru', getenv('HTTP_REFERER'))){
echo "не с сайта запрос";
exit;
}
или я что-то не понял?
Спустя 6 минут, 28 секунд (31.08.2010 - 12:46) ZSH написал(а):
а если первый заход на сайт?
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
Спустя 11 минут, 49 секунд (31.08.2010 - 12:58) maximka787 написал(а):
Цитата (ZSH @ 31.08.2010 - 09:46) |
а если первый заход на сайт? ![]() |
Главную страницу мне не надо защищать. Надо другие. Там много операций и запросов. и чтобы избежать этого я делаю проверку.
Она эффективна?
Спустя 6 минут (31.08.2010 - 13:04) ZSH написал(а):
а если переход по ссылке на конкретную страницу из того-же google?
Спустя 5 минут, 47 секунд (31.08.2010 - 13:09) maximka787 написал(а):
Цитата (ZSH @ 31.08.2010 - 10:04) |
а если переход по ссылке на конкретную страницу из того-же google? |
Ты настаиваешь?
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
Спустя 12 минут, 4 секунды (31.08.2010 - 13:21) ZSH написал(а):
как хочеш, имхо для данной задачи бесполезная конструкция
Спустя 2 часа, 2 минуты, 42 секунды (31.08.2010 - 15:24) FatCat написал(а):
Цитата (maximka787 @ 31.08.2010 - 14:09) |
убрать всеже |
Однозначно. Для раскрутки сайта вреднее код трудно представить.
Ботов же тоже будет вышибать со всех страниц кроме главной. Значит проиндексируется поисковками только главная...
Спустя 2 часа, 32 минуты, 59 секунд (31.08.2010 - 17:57) maximka787 написал(а):
аааа вообще слушайте, у меня там после ввода логина и пароля выкидывает базу авиа компаний. если логин и пароль не верны или не введены то сразу exit.
Индексироваться не должно всеравно.
Ураа, похоже что мне это даже полезней
))
Самое главное чтобы эта страница работала только с главной
Индексироваться не должно всеравно.
if (!ereg('http://mysite.ru', getenv('HTTP_REFERER'))){
exit;
}
Ураа, похоже что мне это даже полезней
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
Самое главное чтобы эта страница работала только с главной
http://mysite.ruи больше ни откуда) Даже если злая ддос придет, то пусть валит первую страницу, потому что в ней нет столько запросов как в той к которой код выше) иначе хватит одного компа чтоб завалить сайт.
Спустя 3 часа, 52 минуты, 46 секунд (31.08.2010 - 21:50) Nord написал(а):
Цитата |
Не знал куда вписать. скажите а эта конструкция вообще играет какую нибудь роль в защите? ведь подделать ее нельзя же. и соответственно кроме как из браузера запросы к сайту выполняться не будут?
|
HTTP_REFERER передается клиентом => можно подделать
Спустя 39 минут, 52 секунды (31.08.2010 - 22:30) maximka787 написал(а):
Цитата (Nord @ 31.08.2010 - 18:50) |
HTTP_REFERER передается клиентом => можно подделать |
а это разве очевидно, что надо сразу подделывать? ещё же надо додумать это взломщику. откуда он знает почему exit выполняется и страница чисто белая.
Спустя 28 минут, 30 секунд (31.08.2010 - 22:58) Nord написал(а):
Цитата |
а это разве очевидно, что надо сразу подделывать? ещё же надо додумать это взломщику. откуда он знает почему exit выполняется и страница чисто белая. |
Ну, если взломщик сможет спокойно ходить по сайту через браузер, то не трудно будет определить, почему скрипт не работет
По крайней мере, мне не кажется эта защита надежной
Спустя 33 минуты, 21 секунда (31.08.2010 - 23:32) maximka787 написал(а):
Цитата (Nord @ 31.08.2010 - 19:58) |
Ну, если взломщик сможет спокойно ходить по сайту через браузер, то не трудно будет определить, почему скрипт не работет По крайней мере, мне не кажется эта защита надежной |
А можно сделать так чтоб нельзя было подделать HTTP_REFERER?
Спустя 3 часа, 41 минута, 55 секунд (1.09.2010 - 03:13) FatCat написал(а):
Создавать сессии только на главной странице, и все запросы внутренних вне сессий футболить на гугл.
Спустя 19 часов, 36 минут, 18 секунд (1.09.2010 - 22:50) maximka787 написал(а):
Цитата (FatCat @ 1.09.2010 - 00:13) |
Создавать сессии только на главной странице, и все запросы внутренних вне сессий футболить на гугл. |
Что-то не совсем понял... Я про подмену REFERRER говорил
Спустя 8 часов, 4 минуты, 44 секунды (2.09.2010 - 06:54) Белый Тигр написал(а):
Заголовок HTTP_REFERRER защитить от подделки никак нельзя. Он всегда формируется на стороне пользователя, следовательно может быть подделан.
_____________
..Работает - не трогай!