如何绕过nginx代理IP列表
我有一个Nginx配置,重定向到保存页面:如何绕过nginx代理IP列表,nginx,nginx-reverse-proxy,nginx-config,whitelist,bypass,Nginx,Nginx Reverse Proxy,Nginx Config,Whitelist,Bypass,我有一个Nginx配置,重定向到保存页面: location / { ... if ($setholdingpage = 'True') { rewrite (^.*$) /holding-page last; } proxy_pass $backend; } 另外,我有一个IP列表,应该是白名单,而不是重定向到持有网页。如何做到这一点?您可以使用允许拒绝指令 如果我纠正了您的错误,白名单将以
location / {
...
if ($setholdingpage = 'True') {
rewrite (^.*$) /holding-page last;
}
proxy_pass $backend;
}
另外,我有一个IP列表,应该是白名单,而不是重定向到持有网页。如何做到这一点?您可以使用
允许
拒绝
指令
如果我纠正了您的错误,白名单将以某种形式成为您的$setholdingpage
变量
试试这个
server {
error_page 403=@holding;
location / {
allow 127.0.0.1;
allow 192.168.1.0/24;
deny all;
proxy_pass http://backend;
}
location /@holding {
root /path/to/your/holding/html;
index holdingv1.html;
}
}
这会将未列入白名单的IP发送到您指定的错误页面。错误页面也可以位于位置
没有测试,但这应该可以做到
参考资料:
您可以使用
允许
拒绝
指令
如果我纠正了您的错误,白名单将以某种形式成为您的$setholdingpage
变量
试试这个
server {
error_page 403=@holding;
location / {
allow 127.0.0.1;
allow 192.168.1.0/24;
deny all;
proxy_pass http://backend;
}
location /@holding {
root /path/to/your/holding/html;
index holdingv1.html;
}
}
这会将未列入白名单的IP发送到您指定的错误页面。错误页面也可以位于位置
没有测试,但这应该可以做到
参考资料:
您可以使用Nginx根据客户端IP地址创建变量,您可以指定单个IP地址或CIDR范围:
geo $bypassip {
default 0;
64.233.160.0/19 1;
66.102.0.0/20 1;
}
如果IP与列表中的IP匹配,则重写变量:
if ($bypassip = 1){
set $setholdingpage False;
}
我使用类似的设置来阻止某些地理区域,但仍然允许谷歌爬虫访问我的网站。您可以使用Nginx根据客户端IP地址创建变量,您可以指定单个IP地址或CIDR范围:
geo $bypassip {
default 0;
64.233.160.0/19 1;
66.102.0.0/20 1;
}
如果IP与列表中的IP匹配,则重写变量:
if ($bypassip = 1){
set $setholdingpage False;
}
我使用类似的设置来阻止某些地理区域,但仍然允许谷歌爬虫访问我的网站。非常感谢您的帮助。我用这种方法,它的工作!非常感谢你的帮助。我用这种方法,它的工作!谢谢你的帮助。可能,这是一个很好的方法,但是我使用了“geo”,这个方法很有效。谢谢你的帮助。也许,这是一个很好的方法,但我使用了“geo”,这种方法很有效。