启用CDN后,网站日志记录的全是CDN的回源ip,而阿里云CDN日志是一小时一分割的,下载合并太麻烦了。
后来发现在Nginx配置文件中添加下面的内容,就可以正常获取访问者真实ip了。
#获取cdn真实ip
set_real_ip_from 0.0.0.0/0;
real_ip_header X-Forwarded-For;
Nginx配置文件info:原理:CDN会把用户的ip放到回源的HTTP请求头中的X-Forwarded-For
或X-Real-IP
字段里。
Error:由于HTTP请求头可以伪造,所以获取的ip不一定是真正的访问者ip。请保护好源站ip!