没有所谓的捷径
一切都是时间最平凡的累积

利用rewrite重写来禁止ip访问,屏蔽拦截ip访问 服务器屏蔽IP访问

本文最后更新:2023年5月30日,已超过323天未更新,如果文章内容失效,请留言反馈本站。

填写说明:
1、根据需求修改(x.x.x.x|x.x.x\.)里面的ip。
2、将要屏蔽的IP填写到括号中,以英文状态下的|分隔。
3、如果要屏蔽ip段就写对应段,最后一位ip数字不填,但“.”要保留,要用\进行转译,比如屏蔽1.2.3.*这个段就写成1.2.3\.。

如果要屏蔽所有ip访问,只单独允许某些ip或ip段访问,可以参考:http://blog.mydns.vip/4248.html

nginx要屏蔽ip访问可以参考:http://blog.mydns.vip/1297.html

如果要屏蔽某个段,但其中某个IP不屏蔽,比如要屏蔽1.2.3.这个段,但是允许1.2.3.4访问。

RewriteEngine On
#Block ip RewriteCond %{http:X-Forwarded-For} ^(1.2.3.4) [OR]
RewriteCond %{REMOTE_ADDR} ^(1.2.3.4) [OR]
RewriteCond %{http:X-Real-IP} ^(1.2.3.4)
RewriteRule (.*) - [L]
RewriteCond %{http:X-Forwarded-For} ^(1.2.3\.) [OR]
RewriteCond %{REMOTE_ADDR} ^(1.2.3\.) [OR]
RewriteCond %{http:X-Real-IP} ^(1.2.3\.)
RewriteRule (.*) - [F]

单独要屏蔽ip或者ip段:

RewriteEngine On
#Block ip
RewriteCond %{http:X-Forwarded-For} ^(1.2.3\.|8.8.8.8) [OR]
RewriteCond %{REMOTE_ADDR} ^(1.2.3\.|8.8.8.8) [OR]
RewriteCond %{http:X-Real-IP} ^(1.2.3\.|8.8.8.8) 
RewriteRule (.*) - [F]

以上规则可以导入到到iis7中,只要iis7安装了iis7_rewrite这个插件就可以导入。

以下示例为屏蔽1.2.3.4这个IP和4.5.6.这段IP访问网站:
Apache规则文件.htaccess(手工创建.htaccess文件到站点根目录)

<IfModule mod_rewrite.c>
RewriteEngine On
#Block ip
RewriteCond %{http:X-Forwarded-For} ^(1.2.3.4|4.5.6\.) [OR]
RewriteCond %{REMOTE_ADDR} ^(1.2.3.4|4.5.6\.) [OR]
RewriteCond %{http:X-Real-IP} ^(1.2.3.4|4.5.6\.) 
RewriteRule (.*) - [F]
</IfModule>

windows2003下 

RewriteEngine On
#Block ip
RewriteCond %{http:X-Forwarded-For} ^(1.2.3.4|4.5.6\.) [OR]
RewriteCond %{REMOTE_ADDR} ^(1.2.3.4|4.5.6\.) [OR]
RewriteCond %{http:X-Real-IP} ^(1.2.3.4|4.5.6\.)
RewriteRule (.*) - [F]

windows2008下 规则文件web.config (手工创建web.config文件到站点根目录)

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="1">
                    <match url="(.*)" ignoreCase="false" />
                    <conditions logicalGrouping="MatchAny">
                        <add input="{HTTP_X_FORWARDED_FOR}" pattern="^(1.2.3.4|4.5.6\.)" ignoreCase="false" />
                        <add input="{REMOTE_ADDR}" pattern="^(1.2.3.4|4.5.6\.)" ignoreCase="false" />
                        <add input="{HTTP_X_REAL_IP}" pattern="^(1.2.3.4|4.5.6\.)" ignoreCase="false" />
                    </conditions>
                    <action type="AbortRequest" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

java主机屏蔽IP或IP段

在tomcat管理-》编辑server.xml   

找到  <Host></Host>

在节点中配置

<Valve className="org.apache.catalina.valves.RemoteAddrValve" deny="1.2.3.4|4.5.6.*"/>

屏蔽后重启tomcat生效,访问提示403

» 站长码字辛苦,有用点个赞吧,也可以打个
» 若转载请保留本文转自:豫章小站 » 《利用rewrite重写来禁止ip访问,屏蔽拦截ip访问》
» 本文链接地址:https://blog.mydns.vip/494.html
» 如果喜欢可以: 点此订阅本站 有需要帮助,可以联系小站
赞(0) 打赏
声明:本站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,若涉及侵权请及时告知,将会在第一时间删除,联系邮箱:contact@mydns.vip。文章观点不代表本站立场。本站原创内容未经允许不得转载,或转载时需注明出处:豫章小站 » 利用rewrite重写来禁止ip访问,屏蔽拦截ip访问
分享到: 更多 (0)

评论 抢沙发


  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

智慧源于勤奋,伟大出自平凡

没有所谓的捷径,一切都是时间最平凡的累积,今天所做的努力都是在为明天积蓄力量

联系我们赞助我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏