Cloudflare 会更改传入请求的 IP 地址,因为 Cloudflare 是我的网站和互联网之间的中间件(代理)。
我该怎么办获取请求的初始IP地址,而不是 Cloudflare 的 IP 地址。我听说过mod_cloudflare
但是这个插件只更新我日志中的IP地址吗(?)而且我没有找到Nginx的版本。
Cloudflare 设置CF-Connecting-IP和X-Forwarded-For headers https://support.cloudflare.com/hc/en-us/articles/200170706-How-do-I-restore-original-visitor-IP-with-Nginx-根据每个要求
你可以简单地从他们的特殊标头中获取IP:
let ip = req.headers['cf-connecting-ip']
如果您期望从 Cloudflare 外部请求,您可以通过以下方式获取这些 IP:
let otherIp = req.headers['x-forwarded-for'] || req.connection.remoteAddress
不过,请注意,其他代理(如 Nginx)也会设置x-forwarded-for
header.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)