关于多cdn嵌套获取访客真实ip

查看 39|回复 1
作者:By小酷   
源站甲骨文德国,国外走cloudflare,国内再套 CloudFront自选。
获取访客真实ip的配置是
real_ip_header CF-CONNECTING-IP; cloudflare的
real_ip_header CloudFront-Viewer-Address; 这个不用说了吧
这两个写一起会报错,只能选择一个,如何才能同时支持2个呢

访客, 甲骨, 说了

兔子淘   
要同时支持两个真实IP头部字段,您可以使用Nginx的real_ip_header和set_real_ip_from指令来配置。以下是一个示例配置:
[ol]http {
    # 设置Cloudflare的真实IP头部字段
    real_ip_header CF-CONNECTING-IP;
    set_real_ip_from 103.21.244.0/22;
    set_real_ip_from 103.22.200.0/22;
    set_real_ip_from 103.31.4.0/22;
    set_real_ip_from 104.16.0.0/12;
    set_real_ip_from 108.162.192.0/18;
    set_real_ip_from 131.0.72.0/22;
    set_real_ip_from 141.101.64.0/18;
    set_real_ip_from 162.158.0.0/15;
    set_real_ip_from 172.64.0.0/13;
    set_real_ip_from 173.245.48.0/20;
    set_real_ip_from 188.114.96.0/20;
    set_real_ip_from 190.93.240.0/20;
    set_real_ip_from 197.234.240.0/22;
    set_real_ip_from 198.41.128.0/17;
    set_real_ip_from 199.27.128.0/21;
    set_real_ip_from 2400:cb00::/32;
    set_real_ip_from 2606:4700::/32;
    set_real_ip_from 2803:f800::/32;
    set_real_ip_from 2405:b500::/32;
    set_real_ip_from 2405:8100::/32;
    set_real_ip_from 2c0f:f248::/32;
    set_real_ip_from 2a06:98c0::/29;
    # 设置CloudFront的真实IP头部字段
    real_ip_header CloudFront-Viewer-Address;
    set_real_ip_from 0.0.0.0/0;
    # 其他Nginx配置...
}
[/ol]复制代码
在上面的示例中,我们使用set_real_ip_from指令指定了Cloudflare和CloudFront的IP地址范围。您可以根据需要添加或修改这些IP地址范围。
请确保在Nginx配置中的正确位置添加这些指令,并重新加载Nginx配置以使其生效。这样,Nginx将同时支持两个真实IP头部字段,并将访客的真实IP地址传递给后端服务器。
您需要登录后才可以回帖 登录 | 立即注册

返回顶部