Я сделал просто Javascript изменение ID, чтобы избежать создания учетной записи, созданной ботами:
setTimeout(function() {
$("#FormAccountCreateTmp").attr("id", "FormAccountCreate");
}, 5400);
Итак, через 5,4 секунды форма с Id FormAccountCreateTmp
имеет Id FormAccountCreate
, а затем jQuery / Javascript может быть выполнено:
$("body").validator().on("submit", "#FormAccountCreate", function(e) {
if(!e.isDefaultPrevented()) {
buttonLoading($("#BtAccountCreate"));
var values = $("form#FormAccountCreate").serialize();
$.ajax({
url: "https://mywebsite.com/sig" + "nup/aja" + "x/ajax" + "_account" + "_create.php",
type: "POST",
data: values,
success: function(data) {
$("#AjaxSignup").empty().html(data);
},
error: function(exception) { console.log(exception); }
});
}
e.preventDefault();
});
Но за несколько дней у меня есть боты, которые достигают регистрации на странице (первая посещенная страница сайта) и проверяют форму 23 секунды позже!
185.72.244.24 - - [08/Feb/2020:02:31:25 +0000] "GET /en/signup/ HTTP/2.0" 200 21891 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36"
...
185.72.244.24 - - [08/Feb/2020:02:31:48 +0000] "POST /signup/ajax/ajax_account_create.php HTTP/2.0" 200 584 "https://mywebsite.com/en/signup/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36"
Что я могу сделать, чтобы заблокировать этих ботов без добавления капчи? Я вижу, что эти боты IPS не упоминаются в моих Matomo журналах посетителей. Таким образом, может быть PHP или Javascript способ их блокировки.
Почему некоторые люди создают этих ботов для создания случайной учетной записи? Создавать эти аккаунты нечего, я не понимаю их целей.