Привет всем.
Есть форма для загрузки файла. В этой форме кнопки submit нет. При указании файла пользователем автоматически идет загрузка файла на сервер (событие + submit в скрытый фрейм).
Без всяких регистраций пользователя - это ключевой момент!
Проблема в том, что роботы пихают в эту форму картинки и успешно загружают в день более 100 изображений, которые чистит крон-обработчик.
Как не позволить роботам делать post-запрос?
Пытался динамически через JS подключать action у формы - не помогло. Судя по всему современные спам-системы отлично понимают JS и отличить "браузер" от робота - не возможно.
PS Капчу не предлагать - она стоит для основной формы на странице. Делать капчу на загрузку файла - вообще не вариант.
Слышали. Капча на странице есть, она распространяется на другую (основную форму). Но пихать капчу на КАЖДУЮ загрузку изображения - это не вариант. Это ужасно с точки зрения юзабилити (пример - тот же тостер).
привязка изображений к сущности (статья, объявление) происходит после post-запроса основной формы, в которой хранится информация о загруженных через этот скрытый фрейм изображениях
Роботы точно входят через сайт?
Без КАПТЧИ они могут на пряму посылать запросы!
У вас уникальный "тикет" в форме есть?
Проверяете клиента при загрузке файла на присутствие на сайте?
Ну и проверяйте сразу есть ли к чему привязывать (в смысле существует ли ТИКЕТ на создание объявления привязаный к ТИКЕТУ на загрузку).