Nginx如何设置拒绝或允许指定ip访问

location ~ /druid/ {
        #deny   192.168.1.1;
        allow   192.168.1.1;
        deny    all;
        proxy_pass http://127.0.0.1:8080;
}

nginx拒绝或允许指定IP,是使用模块HTTP访问控制模块(HTTP Access).
控制规则按照声明的顺序进行检查,首条匹配IP的访问规则将被启用。

location / {
  deny    192.168.1.1;
  allow   192.168.1.0/24;
  allow   10.1.1.0/16;
  deny    all;
}

上面的例子中仅允许192.168.1.0/24和10.1.1.0/16网络段访问这个location字段,但192.168.1.1是个例外。
注意规则的匹配顺序,如果你使用过apache你可能会认为你可以随意控制规则的顺序并且他们能够正常的工作,但实际上不行。
下面的这个例子将拒绝掉所有的连接:

location / {
  #这里将永远输出403错误。
  deny all;
  #这些指令不会被启用,因为到达的连接在第一条已经被拒绝
  deny    192.168.1.1;
  allow   192.168.1.0/24;
  allow   10.1.1.0/1
}

 

时间: 2024-10-27 11:12:17

Nginx如何设置拒绝或允许指定ip访问的相关文章

Nginx屏蔽F5心跳日志、指定IP访问日志_nginx

复制代码 代码如下: location / {  proxy_redirect off;  proxy_set_header Host $host;  proxy_set_header X-Real-IP $remote_addr;  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  proxy_pass http://mmt;  if ( $remote_addr != 192.168.0.2 ) {   access_

Nginx 拒绝指定IP访问网站的配置

Nginx 拒绝指定IP访问的方法其实非常的简单,我们来看简单的配置 下面的这个例子将拒绝掉所有的连接: location / {   #这里将永远输出403错误.   deny all;   #这些指令不会被启用,因为到达的连接在第一条已经被拒绝   deny    192.168.1.1;   allow   192.168.1.0/24;   allow   10.1.1.0/1 } 当然我们可以有一部份合法的IP可以访问 控制规则按照声明的顺序进行检查,首条匹配IP的访问规则将被启用.

WINDOWS 2003 防火墙设置 只允许 指定IP 访问指定端口

前不久在阿里云买的一个服务器,由于没有设置防火墙,前几天突然提示外地登录,立即关闭了服务器. 第二天修改密码,重新开启不一会又提示在别处登录,当时很是无语啊~~~ 于是就寻找只允许指定IP访问指定端口的方法~~好点的是,终于找到了~哈哈~~ 1.打开控制面板   2.打开防火墙 ,点例外 3.点添加端口   4.输入要控制的端口   5.点更改范围   6.选择自定义列表   7.输入允许访问的IP(格式为:192.168.3.100,192.168.3.101/255.255.255.255)

访问限制-手机访问电脑指定ip访问

问题描述 手机访问电脑指定ip访问 只有手机和指定的ip可以访问程序怎么实现,麻烦各位大神赐教,谢谢! 解决方案 识别电脑还是手机访问网站 解决方案二: 就是在电脑上部署一个项目,1.手机可以访问,2.指定的电脑ip可以访问,其他的都不可以访问. 解决方案三: 这种限制跟没有差不多,因为电脑可以伪装成手机,,IE浏览器只需要F12->仿真->写一个手机的UA,比如Android或iPhone的,chrome只需要运行时加一个参数UA就行了,所以说这种限制只对电脑小白有效 解决方案四: 验证用户

dedecms 不让跳转到index与禁止指定IP访问功能

编辑打开include/channelunit.func.php教程页面 查找 $reurl = $typedir.'/'.$defaultname; 替换成 $reurl = $typedir.'/';...   后台没有禁止指定ip访问的功能,不过我们可以通过apche服务器的.htaccess配置文件进行控制,通过htaccess文件,可以帮我们实现:网页301重定向.自定义404错误页面.改变文件扩展名.允许/阻止特定的用户或者目录的访问.禁止目录列表.配置默认文档等功能. 在这里主要讲

linux 禁止指定ip访问

linux中如何禁止指定的ip访问呢? 比如被别人暴力破解,被别人使用不同的密码尝试登录:   所以我想直接禁用这些ip的访问.怎么办呢? 解决方案:修改配置文件/etc/hosts.deny 把要禁止ssh访问的ip都放在/etc/hosts.deny 中:   配置文件中有ip 117.136.38.47. 那么当这个ip尝试ssh登陆时,就会:   直接就拒绝登录了,都不会校验用户名和密码. 配置文件/etc/hosts.deny 内容: Html代码   #   # hosts.deny

通过ASP禁止指定IP和只允许指定IP访问网站的代码_应用技巧

一.禁止指定IP防问网站,并执行相应操作: 复制代码 代码如下: <% Dim IP,IPString,VisitIP '设置IP地址,用"|"隔开 IPString="|192.168.0.42|192.168.0.43|" '获取IP地址 IP = Request.ServerVariables("HTTP_X_FORWARDED_FOR") If IP = "" Then IP = Request.ServerVa

通过ASP禁止指定IP和只允许指定IP访问网站的代码

一.禁止指定IP防问网站,并执行相应操作: 复制代码 代码如下: <% Dim IP,IPString,VisitIP '设置IP地址,用"|"隔开 IPString="|192.168.0.42|192.168.0.43|" '获取IP地址 IP = Request.ServerVariables("HTTP_X_FORWARDED_FOR") If IP = "" Then IP = Request.ServerVa

PHP 只允许指定IP访问(允许*号通配符过滤IP)_php实例

核心函数代码如下: /** * 检测访问的ip是否为规定的允许的ip * Enter description here ... */ function check_ip(){ $ALLOWED_IP=array('192.168.2.*','127.0.0.1','192.168.2.49'); $IP=getIP(); $check_ip_arr= explode('.',$IP);//要检测的ip拆分成数组 #限制IP if(!in_array($IP,$ALLOWED_IP)) { for