使用Nginx实现根据 IP 匹配指定 URL

2019-10-17 20:43:46于海丽

或是

    if ($remote_addr ~* "192.168.0.50|192.168.0.51|192.168.0.56") {
      proxy_pass http://test.com;
    }


如果你是直接另外启动一个 location 的话,比如启动如下 location :

  location /fund {
     if ($remote_addr !~* "192.168.0.50|192.168.0.51|192.168.0.56") {
        rewrite ^ /index.html permanent;
     }
  }

这样的方式也是不支持的,当用 IP 192.168.0.50 访问的时候,没有达到我们的业务需求,会报错 400

注:各位有其他好的建议,欢迎探讨。