ip-block
no way to compare when less than two revisions
Σύγκριση εκδόσεων
Εδώ βλέπετε τις διαφορές μεταξύ της επιλεγμένης έκδοσης και της τρέχουσας έκδοσης της σελίδας.
Επόμενη αναθεώρηση | |||
— | ip-block [2016/12/19 19:52] – δημιουργήθηκε admin | ||
---|---|---|---|
Γραμμή 1: | Γραμμή 1: | ||
+ | ====== Μπλοκάρισμα IP από πρόσβαση στη ιστοσελίδα σας ====== | ||
+ | ---- | ||
+ | |||
+ | ===== Εισαγωγή ===== | ||
+ | |||
+ | Πολλές φορές χρειάζεστε να μπλοκάρετε κάποιες IP που χρησιμοποιούν φόρμες επικοινωνίας για να στέλνουν spam ή και ολόκληρες χώρες, για παράδειγμα εάν λαμβάνετε πολλές ψεύτικες παραγγελίες στο e-shop σας από κάποια συγκεκριμένη χώρα. Παρακάτω υπάρχουν οδηγίες για το πώς θα εμποδίσετε συγκεκριμένες IP ή και ολόκληρα δίκτυα στο να επισκεφτούν τις ιστοσελίδες σας. | ||
+ | |||
+ | ===== Οδηγίες ===== | ||
+ | |||
+ | **Βήμα 1:** | ||
+ | |||
+ | Δημιουργήστε ένα αρχείο με όνομα blocker.php που θα περιλαμβάνει τον παρακάτω κώδικα. | ||
+ | |||
+ | < | ||
+ | <?php | ||
+ | |||
+ | function ipCIDRCheck ($IP, $CIDR) { | ||
+ | list ($net, $mask) = split ("/", | ||
+ | |||
+ | $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(" | ||
+ | |||
+ | while(true) | ||
+ | { | ||
+ | $line = fgets($fh); | ||
+ | if($line == null)break; | ||
+ | |||
+ | if(ipCIDRCheck ($_SERVER[' | ||
+ | { | ||
+ | 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/ | ||
+ | 178.146.184.27/ | ||
+ | </ | ||
+ | |||
+ | **Βήμα 3:** | ||
+ | |||
+ | Στην αρχή του index.php της ιστοσελίδας σας προσθέστε την εντολή που βλέπετε παρακάτω: | ||
+ | |||
+ | < | ||
+ | <? | ||
+ | include (" | ||
+ | ?> | ||
+ | </ |