WordPress中借助.htaccess屏蔽某个IP或某个IP段(防垃圾评论)

最近本站DeveWork.com 老是被来自142.4.108.109这个ip的垃圾评论骚扰,看来之前的《代码实现 WordPress 反垃圾评论功能》用处还是有限的。于是想到了用Apache 的.htaccess 屏蔽这个垃圾评论ip。

方法如下:

在空间的根目录的.htaccess加入以下代码:

1、如果要屏蔽某一特定IP可以使用:

order allow,deny
deny from 142.4.108.109
allow from all

2、如果想要屏蔽多个IP地址,只需多加几个deny from 即可

order allow,deny
deny from 192.168.0.2
deny from 192.168.0.3
deny from 192.168.0.4
allow from all

3、如果需要屏蔽整个IP段,可以使用

order allow,deny
deny from 192.168.0
allow from all

4、如果只想屏蔽IP段中的一小部分IP,则可使用

order allow,deny
deny from 192.168.0.100/200
allow from all

完工,以后来自被屏蔽ip的访问只会显示如图的403页面:

Forbidden
You don't have permission to access / on this server.
Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.

评分:
当前平均分 0.00 (0%) - 0 个投票
18 条 评论
  1. 最近老是有小鬼子发表骚扰 方法拿去试试 感谢大佬分享

    6年前 回复
  2. 原先.htaccess已经有301了,那我怎么把禁止ip段的代码再加进去?

    7年前 回复
  3. 不错的方法 ,我的今天也来了个ip一直发垃圾评论

    8年前 回复
  4. 屏蔽多个IP段怎么写?
    # BEGIN ip
    order allow,deny
    deny from 123.180.232
    deny from 123.182.156
    deny from 123.180.229
    allow from all
    # END ip
    貌似没用, 是写错了吗? :?:

    9年前 回复
    • 更新了后要重启服务器

      9年前 回复
      • 这样的啊,好的。谢谢~

        9年前 回复
  5. 终于在评论中找到未生效的原因了,我用了CDN没有生效!

    9年前 回复
    • :razz: 用CDN 试试这个将以下的代码加入到.htaccess文件里

      order deny,allow
      #1.2.3.4换成你要屏蔽的ip,10.表示屏蔽以10.开头的ip段
      SetEnvIF X-Forwarded-For “1.2.3.4” DenyIP
      SetEnvIF X-Forwarded-For “10.” DenyIP
      Deny from env=DenyIP

      6年前 回复
  6. 你好问一,在httpd.ini下面能加吗

    10年前 回复
  7. 很有用~

    10年前 回复
  8. 恩,很实用。正在被几个采集IP烦着 :???: :???: :???:

    10年前 回复
  9. 如果你的域名用到CDN后,这个功能就失效了

    10年前 回复
  10. 能否请教个问题,QQ:21910089

    11年前 回复
    • 请直接发邮件到admin#jianhui.org,谢谢合作。

      11年前 回复
  11. 垃圾评论神马的最讨厌了。

    11年前 回复
    • 对呀。

      11年前 回复
发表评论