Nginx 负载均衡 后端服务器获取前端用户真实IP
Nginx 后端 日志文件 获取的都是 前端 负载均衡器的IP 想要获取用户的真实IP 必须 使用Nginx 的模块 http_realip_module 才行!!
1. 编译 Nginx 的时候 开启 http_realip_module 模块
./configure --user=upload --group=upload --prefix=/opt/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module
make
make install
2. 完成以后修改配置
1.
Nginx 负载均衡 功能配置项增加
proxy_set_header X-Real-IP $remote_addr;
2.
后端 WEB 里增加
set_real_ip_from 192.168.1.0/24; #允许被信任的IP段
set_real_ip_from 192.168.2.1; #允许被信任的IP段
real_ip_header X-Real-IP;
添加在下面
location ~ .*\.php?$
{
后端 WEB 必须要重启 Nginx 才能生效..
完成以后 tail -f access.log 查看IP是已经是真实IP
tomcat 中 配置
1.
Nginx 负载均衡 功能配置项增加
proxy_set_header X-Forwarded-For $remote_addr;
2.
tomcat 找 到 server.xml
查找 localhost_access_log
将
pattern="%h %l %u %t "%r" %s %b" />
修改为
pattern="%{X-FORWARDED-FOR}i %l %u %t %r %s %b %D %q %{User-Agent}i %T" resolveHosts="false"/>
保存,修改!!
重启 tomcat ,既可生效
Nginx 负载均衡 后端服务器获取前端用户真实IP的更多相关文章
- Nginx负载均衡 后端服务器怎么共享Session 问题
Nginx负载均衡 Nginx负载均衡一些基础知识: nginx 的 upstream目前支持 4 种方式的分配 1).轮询(默认) 每个请求按时间顺序逐一分配到不同的后端服务器,如果后端 ...
- Nginx负载均衡后端健康检查(支持HTTP和TCP)
之前有一篇文章记录nginx负载均衡后端检查,链接为 https://www.cnblogs.com/minseo/p/9511456.html 但是只包含http健康检查不包含tcp下面安装ngin ...
- 获取客户端用户真实ip方法整理(jekyll迁移)
layout: post title: 获取客户端用户真实ip方法整理 date: 2019-08-22 author: xiepl1997 tags: springboot 由请求获取客户端ip地址 ...
- 服务器使用nginx做代理,通过HttpServletRequest获取请求用户真实IP地址
首先,在nginx配置中添加如下配置 server { listen ; server_name www.wenki.info; #要访问的域名 charset utf8; location / { ...
- F5中源地址转换(AutoMap)模式下后端服务器获取客户端真正的IP地址
F5中开启AutoMap,并传递X-Forwarded-For值 开启F5源地址转换"Auto Map" 方式一: 在http profile中开启X-Forwarded-For ...
- Nginx 负载均衡 后端 监控检测 nginx_upstream_check_module 模块的使用
在使用nginx 的负载均衡 中,我们通常会使用到 Nginx 自带的 ngx_http_proxy_module 健康检测模块. ngx_http_proxy_module 自带的 健康检测模块参数 ...
- Nginx负载均衡后端健康检查
参考文档:https://www.cnblogs.com/kevingrace/p/6685698.html 本次使用第三方模块nginx_upstream_check_module的,要使用这个第三 ...
- [已解决]通过多层nginx,tomcat服务无法获取外网真实IP
问题描述: 使用腾讯的御天验证码,提示IP非法IP,内网的tomcat,经过2层nginx代理,服务获取的IP地址为内网ip地址,由于腾讯云的御天验证码对单一IP的频繁访问有拦截的,认定为非法IP(刷 ...
- nginx负载均衡后端tomcat无法加载js资源
JS或css无法完全加载 nginx的代理缓存区,默认较小导致部分文件出现加载不全的问题,比较典型的如jQuery框架,可以通过配置调整nginx的缓存区即可.主要参考proxy参数 最终完整配置如下 ...
随机推荐
- 准备着手学习python
1. python 的框架 Tornado 网址: http://www.tornadoweb.org/en/stable/ github: https://github.com/tornadoweb ...
- 【jsp 练习】 给定三角形三边判断是否能组成三角形及计算面积
Test.java package package1; public class Test { double side1 = -1 , side2 = -1 , side3 = -1 , area = ...
- ActiveX控件在IE中不响应Backspace消息
1.操作输入法需要导入: #include <imm.h> #pragma comment(lib, "imm32") 2.定义变量: //键盘钩子句柄 HHOOK g ...
- aX+bY+cZ=n(非负整数解存在性)
题意: a*1234567+b*123456+c*1234=n 非负整数解得存在性. 题解: 看代码. #include<iostream> #include<cstdio> ...
- 构建一个最简单的web应用并部署及启动
第一种构建方式:不使用maven File-new-Dynamic Web Project,用这种方式构建的web项目是在web.xml文件中配置了welcome-file的,但是却没有对应的文件,所 ...
- UVA - 11400 Lighting System Design (区间DP)
这个问题有两个点需要注意: 1. 对于一种灯泡,要么全换,要么全不换. 证明: 设一种灯泡单价为p1,电池价格为k1,共需要L个,若把L1个灯泡换成单价为p2,电池为k2的灯泡,产生的总花费为p1*L ...
- java 基础之概念
1:栈(Stack) 先进后出(邮政模拟例) 2:队列(Queue) 先进先出(排队购票)
- Oracle Sql优化之报表和数据仓库运算
1.行转列:有两种写法,一种是case when end写法,另一种写法是pivot(oracle 11g新增) select job, then sal end) as sal10, then sa ...
- 转:WebDriver进行屏幕截图
例: 打开百度首页 ,进行截图 01 packagecom.example.tests; 02 importjava.io.File; 03 importorg.apache.commons.io ...
- 首页商品图片显示错位,easy-popular批量上传
=============关于zencart批量商品管理的说明================== 首先,安装好批量商品管理模块,设置 /tempEP 目录可写二.确认你已经在后台增加了一些分类目录. ...