1Panel icon indicating copy to clipboard operation
1Panel copied to clipboard

[FEATURE]开启CDN后网站日志只显示CDN回源IP

Open bushanhuo opened this issue 1 year ago • 6 comments

1Panel 版本

v1.10.7-lts

请描述您的需求或者改进建议

如题,开启CDN以后网站日志就变成下面这样的内容: 163.181.146.187 - - [10/May/2024:14:20:12 +0000] "GET /admin/?m=admin HTTP/1.1" 200 1895 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36"

前面的163.181.146.187就是阿里云CDN的回源IP,而并非访问用户IP。

请描述你建议的实现方案

真实的用户IP都在这个HTTP头中: set_real_ip_from 0.0.0.0/0; real_ip_header X-Forwarded-For;

1Panel可以先获取一下存不存在这个HTTP头信息,如果存在则在网站日志中显示real ip。 如果HTTP头中不存在上面那些参数,则就按照标准信息返回。

就类似BT一样。

附加信息

No response

bushanhuo avatar May 10 '24 15:05 bushanhuo

image 可以增加一下这个配置 保存之后访问 网站然后查看 每行日志的最后的 IP 是不是真实 IP 如果是 可以修改 OpenResty 配置文件 image log_format 来调整日志中真实 IP 的位置

zhengkunwang223 avatar May 10 '24 15:05 zhengkunwang223

image 可以增加一下这个配置 保存之后访问 网站然后查看 每行日志的最后的 IP 是不是真实 IP 如果是 可以修改 OpenResty 配置文件 image log_format 来调整日志中真实 IP 的位置

嗯,主要是想像BT一样。 存在CDN就获取真实IP,然后日志就显示真实的IP。 不存在真实IP,就按照标准格式来显示。 这样弄也行,就是不符合正常阅读习惯。 如果把真实IP改到前面,没开CDN的站点就直接获取不到IP了,很麻烦。 不如1Panel内置给改了。

bushanhuo avatar May 10 '24 15:05 bushanhuo

能否贴一下 宝塔 的设置页面

zhengkunwang223 avatar May 11 '24 02:05 zhengkunwang223

能否贴一下 宝塔 的设置页面

宝塔里面,只需要修改一下Nginx设置,在Nginx中加上这样一段代码就可以实现: 2

这样就是开启CDN以后会自动显示真实的IP地址。 如果网站没有开启CDN也不会显示空白信息,显示的还是用户的访问IP地址。

bushanhuo avatar May 13 '24 06:05 bushanhuo

能否贴一下 宝塔 的设置页面

宝塔里面,只需要修改一下Nginx设置,在Nginx中加上这样一段代码就可以实现: 2

这样就是开启CDN以后会自动显示真实的IP地址。 如果网站没有开启CDN也不会显示空白信息,显示的还是用户的访问IP地址。

在 1Panel 中增加这段配置 IP 会空白是吗

zhengkunwang223 avatar May 13 '24 13:05 zhengkunwang223

能否贴一下 宝塔 的设置页面

宝塔里面,只需要修改一下Nginx设置,在Nginx中加上这样一段代码就可以实现: 2 这样就是开启CDN以后会自动显示真实的IP地址。 如果网站没有开启CDN也不会显示空白信息,显示的还是用户的访问IP地址。

在 1Panel 中增加这段配置 IP 会空白是吗

不会是空白,但是有个问题就是。 每次更新或者重载,再或者更新1P的时候会导致配置丢失。 如果能内置一个开启功能会方便很多,不用每次手动加进去。 手动加有点麻烦。

bushanhuo avatar May 14 '24 04:05 bushanhuo

能否贴一下 宝塔 的设置页面

宝塔里面,只需要修改一下Nginx设置,在Nginx中加上这样一段代码就可以实现: 2 这样就是开启CDN以后会自动显示真实的IP地址。 如果网站没有开启CDN也不会显示空白信息,显示的还是用户的访问IP地址。

在 1Panel 中增加这段配置 IP 会空白是吗

不会是空白,但是有个问题就是。 每次更新或者重载,再或者更新1P的时候会导致配置丢失。 如果能内置一个开启功能会方便很多,不用每次手动加进去。 手动加有点麻烦。

不同 CDN 的配置可能不一样,所以暂时还是需要手动配置的

zhengkunwang223 avatar Jun 06 '24 05:06 zhengkunwang223