Εργαλεία Χρήστη

Εργαλεία ιστότοπου


ip-block

Μπλοκάρισμα IP από πρόσβαση στην ιστοσελίδα σας


Εισαγωγή

Πολλές φορές χρειάζεστε να μπλοκάρετε κάποιες IP που χρησιμοποιούν φόρμες επικοινωνίας για να στέλνουν spam ή και ολόκληρες χώρες, για παράδειγμα εάν λαμβάνετε πολλές ψεύτικες παραγγελίες στο e-shop σας από κάποια συγκεκριμένη χώρα. Παρακάτω υπάρχουν οδηγίες για το πώς θα εμποδίσετε συγκεκριμένες IP ή και ολόκληρα δίκτυα στο να επισκεφτούν τις ιστοσελίδες σας.

Οδηγίες

Βήμα 1:

Δημιουργήστε ένα αρχείο με όνομα blocker.php που θα περιλαμβάνει τον παρακάτω κώδικα.

<?php
 
function ipCIDRCheck ($IP, $CIDR) {
list ($net, $mask) = explode ("/", $CIDR);
 
$ip_net = ip2long ($net);
$ip_mask = ~((1 << (32 - $mask)) - 1);
 
$ip_ip = ip2long ($IP);
 
$ip_ip_net = $ip_ip & $ip_mask;
 
if ($ip_ip_net == $ip_net)
return true;
else
return false;
}
 
$fh = fopen("blocked.txt", "r");
 
while(true)
{
$line = fgets($fh);
if($line == null)break;
 
if(ipCIDRCheck ($_SERVER['REMOTE_ADDR'], "$line"))
{
echo "You are now allowed to view this page.";
die();
}
}
 
fclose($fh);
 
?>

Bήμα 2:

Δημιουργήστε ένα αρχείο με όνομα blocked.txt που θα περιλαμβάνει τις IP σε μορφή IP/CIDR. Στη πρώτη γραμμή βλέπετε πώς μπορείτε να μπλοκάρετε πολλές IP (ανάλογα το CIDR) και στη δεύτερη γραμμή βλέπετε πώς μπορείτε να μπλοκάρετε μια συγκεκριμένη IP (το CIDR είναι 32).

178.146.128.0/17
178.146.184.27/32

Βήμα 3:

Στην αρχή του index.php της ιστοσελίδας σας προσθέστε την εντολή που βλέπετε παρακάτω:

<?
include ("./blocker.php");
?>

CRETAFORCE E.E. - Αρ. Γ.Ε.ΜΗ: 159980803000 - Τηλ: (+30) 211 800 2580