使用CF CDN服务后,nginx日志文件记录中的真实ip问题

September 3, 2019 · 分享 · 22次阅读

最近网站一直有个奇怪的访问地址,不过typecho后台使用的ACCESS插件不能识别UA。
找到access_log一看,发现原来一直记录的是cdn的ip,搜了一下,找到一个比较合适的修改方法。
这个方法适用于有/无CDN情况。
方法如下:

  • 修改nginx.conf文件,首先在http{}中添加
map $HTTP_CF_CONNECTING_IP $clientRealIp 
{
    "" $remote_addr;
    ~^(?P<firstAddr>[a-z0-9.:]+),?.*$ $firstAddr;
}
log_format real_access_ip '$clientRealIp [$time_local] "$request" '
                  '$status $body_bytes_sent "$http_referer" '
                  '$http_user_agent $remote_addr $request_time';
  • 日志路径处稍作修改
access_log /var/log/nginx/access.log real_access_ip;
  • 最后重启nginx
service nginx restart

以上均来源于网络233

标签:none

最后编辑于:2019/09/03 10:40

添加新评论