#php #синтаксический_анализ
Заметил в логах всякую кривую хрень: То идет куча запросов на не существующие файлы - типа проверяют что за движок или пытаются ломануть То еще всякая мутотень, могут программу написать которая сайт будет выкачивать (это как бы в теории) Как можно на php сделать защиту от парсинга сайта? типа такую же как на яндекс марките? В целях экономия трафика и мощности сервера Ну уж очень дрючат ироды И еще проблема - это поисковики - они тоже дрючат но в бан их никак нельзя
Ответы
Ответ 1
Для поисковиков можно задать период обновления информации на сайте, может тогда меньше начнут? Насчёт парсинга - что за сайт, что так боитесь за его содержимое? Или что вы подразумеваете под парсингом? Периодически запускают выкачивание всего сайта с целью парсинга?Ответ 2
Собственно я придумал крутую защиту от парсинга При входе на сайт запихиваем сессию с уникальным ключом Потом генерируем кодированный javascript который отправляет с помощью ajax при загрузке сайта этот самый уникальный ключ и устанавливает новую сессию nobot Короче говоря потом проверяем если допустим 10 заходов на сайт а сессии nobot нет то нафиг в бан Походу это крутая защита вот только фиг знает гугл и поисковики тоже попадут в банОтвет 3
С большой вероятностью это просто "хакеры". Боты, пытающиеся определить движок. Вообще никакая не редкость в наше время. Защитить содержимое от парзинга и при этом отдавать нормальное содержимое поисковикам невозможно. Про хитрые схемы с AJAX Вам уже написали - это хороший вариант, если замудрить с динамической подгрузкой содержимого, то парзить будет крайне сложно. Простой вариант сделать задержку загрузки страниц (настраивается, к примеру, в nginx, если он у Вас есть, несложным образом). Исходим из того, что обычный пользователь не может читать по 100 страниц за минуту. Если такое происходит - то это бот (поисковый, хакерский или парзер конкурентов). Если же огромное количество запросов на несуществующие URI (которые не являются ссылками на старую версию вашего сайта) идет с одного IP, то это "хакеры", детектирующие широко распространенные движки. Их можно просто банить.
Комментариев нет:
Отправить комментарий