启用CDN后Nginx获取真实IP地址

warning: 这篇文章距离上次修改已过1574天,其中的内容可能已经有所变动。

启用CDN后,网站日志记录的全是CDN的回源ip,而阿里云CDN日志是一小时一分割的,下载合并太麻烦了。

后来发现在Nginx配置文件中添加下面的内容,就可以正常获取访问者真实ip了。

#获取cdn真实ip
set_real_ip_from 0.0.0.0/0;
real_ip_header X-Forwarded-For;

Nginx配置文件Nginx配置文件

info:原理:CDN会把用户的ip放到回源的HTTP请求头中的X-Forwarded-ForX-Real-IP 字段里。
Error:由于HTTP请求头可以伪造,所以获取的ip不一定是真正的访问者ip。请保护好源站ip!

添加新评论

* 人工审核评论,通过后即可正常显示。《隐私政策》