Позволяя Google обойти проверку CAPTCHA - разумным или нет?

StackOverflow https://stackoverflow.com/questions/2621533

  •  26-09-2019
  •  | 
  •  

Вопрос

Мой веб-сайт имеет поиск базы данных; Заполнение капчи дает вам 5 минут времени поиска. Существует также какой-то пользовательский код для обнаружения любых автоматизированных сценариев. Я делаю это, так как я не хочу, чтобы кто-то данные добывают мой сайт.

Проблема в том, что Google не видит результатов поиска, когда он ползет мой сайт. Если кто-то ищет строку, которая присутствует в результате поиска, я хотел бы, чтобы они нашли эту страницу, погружая ее.

Очевидное решение для меня - использовать переменную PHP $_SERVER['HTTP_USER_AGENT'] Чтобы обойти CAPTCHA и Custom Code Security для Google Botts. Мой вопрос заключается в том, есть ли это разумно или нет.

Затем люди могут использовать кэш Google, чтобы просмотреть результаты поиска без необходимости заполнения CAPTCHA, но собственный методы обнаружения Google предотвращают бы им данные о том, чтобы они были добывающими данными этих страниц?

Или был бы какой-то способ для людей сделать $_SERVER['HTTP_USER_AGENT'] появляются как Google, чтобы обойти меры безопасности?

Заранее спасибо.

Это было полезно?

Решение

Или будет ли возможность людей сделать $ _server ['http_user_agent'], как Google, чтобы обойти меры безопасности?

Определенно. Пользовательский агент смешно легко поддаваться. Увидеть, например, Переключатель агента пользователя для Firefox. Отказ Также легко для спама для установки заголовка агента пользователя в Google Bot.

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

Дополнительный способ распознать Google Bot мог быть IP-диапазоном (ы), который он использует. Я не знаю, использует ли бот определить IP-диапазоны - это может быть то, что это не так, вам нужно было узнать.

Обновлять: Кажется, можно проверить Google Bot, анализируя свой IP. От Google Webmaster Central: как проверить GoogleBot

Рассказывая веб-мастера использовать DNS для проверки в каждом конкретном случае, кажется лучшим способом. Я думаю, что рекомендуемая методика будет выполнять обратный поиск DNS, убедитесь, что имя находится в домене GoogleBot.com, а затем выполнить соответствующий DNS-> IP-адрес IP, используя это имя GoogleBot.com; например:

HOST 66.249.66.1 1.66.249.66.1 1.66.249.66.IN-ADDR.ARPA Указатель доменного имени Crawl-66-249-66-1.GoogleBot.com.

Хост Crawl-66-249-66-1.GoogleBot.com Crawl-66-249-66-1.Googlebot.com имеет адрес 66.249.66.1

Я не думаю, что просто выполнение обратного поиска DNS достаточно, потому что капли может настроить обратный DNS, чтобы указать на CRAWS-ABCD.Googlebot.com.

Другие советы

то $_SERVER['HTTP_USER_AGENT'] Параметр не является безопасным, люди могут подделать его, если они действительно хотят получить ваши результаты. Ваше решение - это бизнес, в основном вы хотите снизить безопасность и потенциально позволять людям / ботам соскребать ваш сайт, или вы хотите, чтобы ваши результаты были скрыты от Google.

Одно решение безопасно, есть небольшая база данных Geo отсортирована по ASN, заблокируйте BAD ASN BOT (прокси, сервер, провайдер хостинга в качестве OVH) и разрешить небольшой бот (Google, Bing, Yahoo), GSM Mobile ASN, как оранжевый, SFR Vodafone ... просто идея :)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top