当用户通过CDN访问网站时,服务器默认看到的是CDN节点的IP,而非用户真实IP。要传递真实地址,主要依靠HTTP头信息。
CDN服务商会在转发请求时,将用户的原始IP添加到特定的自定义头部字段。常见的标准字段是`X-Forwarded-For`,它记录从客户端到服务器所有经过的代理IP,第一个地址即为用户真实IP。部分厂商也会使用`X-Real-IP`等头部直接携带真实地址。
网站后端需要相应配置以识别这些头部。例如,Nginx中可使用`$http_x_forwarded_for`变量获取;应用代码则需调整逻辑,优先从这些头部读取IP,并注意防范头部被伪造的风险。
这样,即使请求经过CDN加速,服务端也能准确获取用户真实IP,用于访问统计、安全风控或地域化服务等需要真实地址的场景。
本文由武汉极致融合云发布于云资讯,转载请注明出处:CDN如何传递用户的真实IP地址