v2.5.2
Giriş yap

Crawling & Scraping Koruma Yöntemleri

r00t
359 defa görüntülendi

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?

ufukart
728 gün önce

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));
}