我在使用NGINX进行反向代理配置时遇到问题。我正在使用Cloudflare作为DNS服务器。我在Cloudflare中添加了两个“ A”条目,其中一个启用了代理,另一个未启用。例如:
我的NGINX配置:
server {
listen 80;
listen [::]:80;
server_name system.domain.com system2.domain.com;
server_tokens off;
set_real_ip_from 192.168.1.1;
real_ip_header X-Forwarded-For;
real_ip_recursive on;
location / {
allow <My Public IP>;
deny all;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.1.100;
}
}
在浏览器中从允许的IP地址页面输入地址system.domain.com后,将正确加载(我的公共IP地址已保存在访问日志中)。但是,当我从相同的IP地址输入到system2.domain.com地址时,出现错误:
access forbidden by rule, client: 192.168.1.1
此问题来自何处? Cloudflare代理会以某种方式影响它吗?该如何解决?
答案 0 :(得分:0)
我认为问题在于以下几行:
real_ip_header X-Forwarded-For;
我认为关闭代理服务器时不会设置它。尝试将其更改为以下值,应始终将其设置:
real_ip_header CF-Connecting-IP;
来源:https://www.tools4nerds.com/online-tools/cf-real-ip-from-generator