kavo

军哥 lnmp 安装 nginx 扩展 http_realip_module --应对 CDN 无法获取用户真实IP

因为网站使用了 Fastly 的 CDN ,导致后台显示用户注册的IP地址全部变为了CDN自家的地址。

这就导致无法看到真实用户的 IP 地址以及分布了。

 

本来想着不去解决这个问题,可是抱着好奇心还是去搜索查了查,然后发现 Nginx 是有模块可以解决该问题的。

 

首先需要安装 http_realip_module 模块,因为使用的环境是军哥的 Lnmp ,默认没有安装该模块,所以需要手动来安装。

 

Lnmp 官网有说明:https://lnmp.org/faq/lnmp1-2-upgrade.html

所以按照教程开始:

进入到 lnmp 安装目录
cd 空格

cd lnmp1.6


然后编辑 lnmp.conf 在 Nginx_Modules_Options 引号内加入 --with-http_realip_module

就是如下:

Download_Mirror='https://soft.vpser.net'

Nginx_Modules_Options='--with-http_realip_module'
PHP_Modules_Options=''

##MySQL/MariaDB database directory##
MySQL_Data_Dir='/usr/local/mysql/var'
MariaDB_Data_Dir='/usr/local/mariadb/var'
##Default website home directory##
Default_Website_Dir='/home/wwwroot/default'

Enable_Nginx_Openssl='y'
Enable_PHP_Fileinfo='n'
Enable_Nginx_Lua='n'
Enable_Swap='y'
~               

然后执行

./upgrade.sh nginx

注意此处,因为必须要选择 Nginx 的升级版本,如果你不想升级的话,就输入当前安装的 nginx 的版本就可以了

查询当前 Nginx 版本

nginx -V

因为是平滑升级,所以升级过程不影响网站访问,也无需重启 Nginx

升级后查看得知模块已安装

 然后我们开始对 Nginx 编辑 ngin.conf 配置以获取用户真实 IP

cd /usr/local/nginx/conf
在 http { } 中添加

set_real_ip_from 103.138.13.10/34;
real_ip_header X-Forwarded-For;
real_ip_recursive on;

以上的IP地址换成你使用的CDN的IP地址段。

重启 nginx

lnmp nginx restart

posted on   下雨天唱情歌  阅读(43)  评论(0编辑  收藏  举报  

编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示