利用.htaccess禁止IP或IP段访问的方法

之前在网上看到过几篇所谓的在.htaccess中禁止IP访问的教程,但是很明显,发这些教程的人基本都是转载的,自己都不明白其含义,人云亦云,转载错误的教程,反过来误导他人。

禁止IP可以使用语句,分别为:

  1. Order Allow,Deny

 

  1. Order Deny,Allow

 

这两种的分别为,Order语句是Allow还是Deny,Order语句的不同,其对应的语句也不同; 如果使用Order Allow,Deny,可以使用下面的方法禁止IP访问(将IP替换为你要禁止的IP地址):

  1. Order Allow,Deny
  2. Allow from all
  3. Deny from 255.255.255.255

 如果使用Order Deny,Allow ,可以使用下面的方法禁止IP访问:

  1. Order Deny,Allow
  2. Deny from 255.255.255.255

 通过上面可以看出,如果是Order Deny,Allow,下面没有Allow from all 语句,如果加上,会变成不禁止任何IP;但是Order Allow,Deny却必须有Allow from all,否则就会变成禁止所有IP访问;

代码如下

  1. Order Allow,Deny
  2. Allow from all
  3. Deny from 125.64.2.46 182.237.3.102 58.215.169.18 114.80.132.9 121.14.48.5 66.249.67.182 94.180.84.186 58.243.40.76 89.123.61.113 116.23.60.197 110.75.172.81 60.215.129.75

允许所有,禁止 XXX,请将里面的IP改成你要封杀的IP地址。
并另存为.htaccess,上传到网站根目录,一般为public_html,部分程序会有这个文件,例如WP,直接添加到里面即可。


禁止ip段

  1. Order Allow,Deny
  2. Allow from all
  3. Deny from 192.168.1

以上相当于禁止192.168.1.1-192.168.1.254