在配置nginx规则拦截的时候我们要清楚自己的需求

需求如下:

外网地址:不能被访问

内网地址:能访问

外网地址如下:外网ip+端口/pac/pul/check     (这里域名ip都可以)

内网地址如下:内网ip+端口/pac/pul/check               (内网ip不做拦截)

nginx配置如下:

location /pac {

if ( $request_uri = /pac/pul/chec) {

return 404;

}

root html;

index index.html index.htm;

proxy_set_header X-real-ip $remote_addr;

proxy_set_header REMOTE-HOST $remote_addr;

proxy_set_header CLOUD-FORWORD-CLENT-IP-REMOTADDR $http_x_forwarded_for;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header REMOTE_PORT $remote_port;

proxy_set_header Host 内网域名或者ip;

proxy_pass 内网域名或者ip/gate/pac;

client_max_body_size 30m;

}

上面的配置和需求这里简单说明一下:

1、我们的环境有内网和外网之分,但是有些请求只能内网访问  外网不能访问

2、所有通过nginx localtion 配置添加判断条件  当外网访问等于我设定条件时返回指定错误响应码

此方法也可以用来判断  ip   域名等等

文章来源

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。