What I would like to share with you here is a simple code that uses PHP to implement blocking the specified IP segment. It is very useful. Practical, friends in need can refer to it.
During this period of time, I always see frequent requests from users with unknown browsers and unknown operating systems in the statistical tools, and the IP addresses are all in the same segment, which makes me have some questions, are these users considered valid users? There are no records of website visits by browsers or operating systems. After several days of analysis, I confirmed that these visits were not made by people but by machines or others collecting content from my site. I came up with the idea of blocking this IP address.
Export the user data without browser records in the statistics and take a look. Blocking IPs is no longer practical. There are more than a hundred IPs, but if you look carefully, it is not difficult to see that these IPs are concentrated in certain IP blocks. Find a way to block users in the entire IP range, which may cause some accidental killings but can ensure that the website traffic is clean.
Okay, I won’t talk nonsense anymore. Below is an introduction to my implementation ideas and code
I want to block the first two ends of the IP segment 111.11.11.11. I want to block access to this IP segment starting with 111.11
My implementation idea is to store the IPs to be blocked in an array and then use the obtained user IPs to match them in the array. If they are in the array, they will be blocked, and if they are not in the array, they will be allowed.
Let’s serve. I wrote a function. It’s very rough. Masters, please don’t complain
?
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<font face="NSimsun">/** </font>
* 屏蔽IP段
*/
<code class="php keyword"><font face="NSimsun">function</font> function killIp( $ip ){ $return <font face="NSimsun">= false; </font> = false; <div class="line number6 index5 alt1">
<font face="NSimsun">
<code class="php spaces"> $ip1 = array ( '111' , '112' , '102' , '114' ); $ip2 = array ( '1' , '2' , '3' , '4' , '5' ); $temp = explode ( '.' , $ip );
if (in_array( $temp [0], $ip1 ) && in_array( $temp [1], $ip2 )) {
$return <code class="php plain"><font face="NSimsun">= true; </font> = true; } return $return ; <font face="NSimsun">}</font> }
|
The above is the entire content of this article, I hope you all like it
php simply implements blocking the access of users in the specified IP segment. What I would like to share with you is a simple shielding implemented using php. The code for specifying the IP segment is very practical. Friends in need can...