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

6 篇文章 0 订阅

因为网站使用了 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
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值