Мне действительно любопытно, как предотвратить спам в комментариях на форуме, используя ловушку с медовым горшком для спам-ботов.
Что если CSS и javascript отключены в браузере?
Видите ли вы другие недостатки в ловушке мед горшок?
Как вы думаете, что должна быть у каждой ловушки для меда?
Знаете ли вы какую-либо другую антиспамовую альтернативу, которая не мешает работе пользователей.
Ответы:
Надлежащая приманка не будет полагаться ни на одну из них, чтобы работать. В идеале вы будете использовать скрытое поле формы для этого, которое не требует реального сокрытия.
Если вы делаете это правильно, не должно быть никаких проблем, о которых пользователи будут знать. Для его работы потребуются небольшие накладные расходы, но это должно быть настолько мало, что это даже не должно вызывать беспокойства.
Из предыдущего ответа : вы могли бы сделать несколько вещей (и должны делать больше одного), включая:
Используйте CAPATCHA как reCAPTCHA
Используйте поле, которое требует от пользователя ответа на вопрос, например, что такое 5 + 3. Любой человек может ответить на него, но бот не будет знать, что делать, поскольку он автоматически заполняет поля на основе имен полей. Таким образом, это поле будет либо неправильным, либо пропущенным, и в этом случае отправка будет отклонена.
Используйте токен и поместите его в сеанс, а также добавьте его в форму. Если токен не отправлен с формой или не совпадает, то он автоматизирован и может быть проигнорирован.
Ищите повторные представления с того же IP-адреса. Если ваша форма не должна получать слишком много запросов, но вдруг она, вероятно, попадает под бот, и вам следует подумать о временной блокировке IP-адреса.
Используйте Askimet . Отлично подходит для выявления спама.
Рекомендуемое чтение: как работают спам-боты?
источник
Я уверен, что боты формы будут игнорировать любые
<input type="hidden">
поля. Лучшее решение - использовать обычный текстовый ввод с обычным типом данных. Все, что вы в данный момент не используете, отлично подходит, например, веб-сайт, адрес, почтовый индекс, имя пользователя и т. Д.Добавьте сообщение «если вы видите это поле, пожалуйста, оставьте его пустым». Оберните сообщение и введите его в элемент div с CSS, установленным для отображения: нет.
К сожалению, хотя большинство спам-ботов очень просты и глупы, многие умнее и могут обнаружить любой популярный трюк. В зависимости от характера формы может быть лучше использовать CAPTCHA или Akismet.
источник
Что-то, что я не часто вижу, является основанным на времени решением капчи. Спам работает лучше всего, если вывести его как можно быстрее. Я заменил размещенную в Google ReCaptcha с 20-секундной задержкой отправки для моих контактных форм, использующих сеансы PHP, и это значительно сократило спам. Я придумал время задержки, используя данные Google Analytics о поведении пользователей.
источник