今天查了一下网站的访问日志(因为是测试站点,一直没看过),发现日志中记录的ip地址全是cdn节点的,就想着怎么捣鼓一下nginx的配置让它能记录一下用户的直实ip,说干就干,上百度,查资料,做测试。
以下是修改教程,已经了测试
要求:
1、环境:宝塔面板 nginx php mysql
2、cdn环境:cdn
修改方法
1、打开 nginx 配置
找到 nginx 快捷菜单,一般在kb88凯时d88尊龙官网手机app官网登录首页 区,如果没有去软件商店找
2、找到配置修改项
3、添加以下代码,
set_real_ip_from 0.0.0.0/0; real_ip_header x-forwarded-for;
添加后如下图所示:
4、重启nginx
5、观察你的网站的用户访问日志获取的ip是否是用户的真实ip呢
宝塔面板网站日志默认存放地址
/www/wwwlogs
补充
1、以上操作只在阿里云cdn下测试成功了
2、修改 nginx 配置之前一定要备份一下,否则修改出错不好还原
3、如果修改后,网站日志无法生成,那检查一下复制的代码前后是不是有空格 (个人遇到了这种情况)
4、如果你没有使用cdn,请勿修改
5、获取到用户ip地址,不一定为真实的ip地址,可能是经过了多重代理后的ip。