Crawling & Scraping Koruma Yöntemleri
Sitem üzerindeki "Crawling" ve benzeri durumlara karşı önlem olarak; ne gibi yöntemler kullanabilirim?
örneğin; PHP ile, aynı IP üzerinden 10 dk içerisinde 100'den fazla sayfayı ziyaret eden kişilerin IP'lerini blocklamak
gibi benzer örnekler öğrenmek istiyorum. fikriniz nedir?
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (3)
Bir log tablosunda ziyaret kayıtlarını tutmalısın.
Sonra her sayfana include ettiğin bir rate.php dosyasında aşağıdaki gibi işlem yaparsın.
$sel = $db->prepare('Select logID FROM logs WHERE CreatedDate > now() - interval 10 minute AND Ip =?');
$sel->execute([$ip]);
$count = $sel->rowCount();
if ($count >= 100){
$response['status'] = 0;
$response['message'] = 'Günlük sorgu limitine ulaştınız. Bugün daha fazla sorgulama yapamazsınız. Lütfen daha sonra tekrar deneyin.';
exit(json_encode($response));
}