问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

宝塔面板环境站点开启CDN后如何获取真实IP地址(多设置方法)

创作时间:
作者:
@小白创作中心

宝塔面板环境站点开启CDN后如何获取真实IP地址(多设置方法)

引用
1
来源
1.
https://www.cnblogs.com/laijinquan/p/18298018

在使用CDN加速后,网站日志中显示的通常是CDN节点的IP地址,而不是访客的真实IP地址。这对于数据分析和安全监控来说是一个问题。本文将介绍如何在宝塔面板环境下,通过配置Nginx来获取真实访客IP地址。

这个问题是周末的时候帮助一个网友设置的,这里把问题简单的整理出来。这个同学有在使用宝塔面板搭建的WEB环境,且他的网站有开启和使用CDN加速,但是在加速之后呢日志中看不到真实的访客IP地址,而是CDN的节点IP,这个就不利于分析数据。所以,需要确保CDN能正常使用,而且日志的IP地址也能看到真实的IP。

1. 代码修改办法

这个办法老蒋一直在用的,如果懂修改代码的直接在NGINX中修改。记录在"Nginx Web环境启用CDN后日志如何看到真实访客IP地址"。

我们需要找到"Nginx.conf"文件,然后修改。(这个文件需要看我们对应的环境工具,有一些偏差)

这里这个同学用的宝塔面板,所以我在他NGINX软件管理找到上图,直接在可视化界面修改。

log_format access '$http_x_forwarded_for - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" ';

我们需要在nginx.conf的http中插入上面的代码。如果是LNMP是在:

/usr/local/nginx/conf/nginx.conf

然后需要到当前站点的.conf文件中。

access_log /www/wwwlogs/laobuluo.com_nginx.log access;

这个格式access要和上面的要一致,我们也可以换其他的格式。最后重启生效。

2. 防火墙设置办法

如果我们有使用防火墙插件的话,需要在防火墙插件中CDN开启。

3. 第二种代码法

set_real_ip_from 0.0.0.0/0;
real_ip_header X-Forwarded-For;

同样类似第一个界面一样配置Nginx,添加代码。

这个添加后效果和第一个是一样的。

最后,我们可以从日志文件中找找看我们自己的访问是不是留下的是真实IP地址。这样就可以解决网站开启CDN后,不记录真实IP的解决方法。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号