linux中tomcat记录负载均衡真实用户IP地址

Tomcat有nginx或其他软件做负载均衡,tomcat需要记录真实客户端地址,需要在Host或Context下定义如下内容:

 代码如下 复制代码

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" 
               prefix="localhost_access_log." suffix=".txt" pattern="%{X-Forwarded-For}i %h %l %u %t %r %s %b" resolveHosts="false"/>

注意:上述%{X-Forwarded-For}i表示客户端真实地址,默认的%a仅记录负载均衡地址。

时间: 2024-09-16 07:48:20

linux中tomcat记录负载均衡真实用户IP地址的相关文章

如何在Linux中找出所有在线主机的IP地址

你可以在 Linux 的生态系统中找到很多网络监控工具,它们可以为你生成出网络中所有设备的摘要,包括它们的 IP 地址等信息. 然而,实际上有时候你只需要一个简单的命令行工具,运行一个简单的命令就能提供同样的信息. 本篇教程会向你展示如何找出所有连接到给定网络的主机的 IP 地址.这里我们会使用 Nmap 工具来找出所有连接到相同网络的设备的IP地址. Nmap (Network Mapper 的简称)是一款开源.强大并且多功能的探查网络的命令行工具,用来执行安全扫描.网络审计.查找远程主机的开

在 Linux 中找出所有在线主机的 IP 地址

你可以在 Linux 的生态系统中找到很多网络监控工具,它们可以为你生成出网络中所有设备的摘要,包括它们的 IP 地址等信息. 然而,实际上有时候你只需要一个简单的命令行工具,运行一个简单的命令就能提供同样的信息. 本篇教程会向你展示如何找出所有连接到给定网络的主机的 IP 地址.这里我们会使用 Nmap 工具来找出所有连接到相同网络的设备的IP地址. Nmap (Network Mapper 的简称)是一款开源.强大并且多功能的探查网络的命令行工具,用来执行安全扫描.网络审计.查找远程主机的开

阿里云负载均衡转发客户端IP策略调整导致的问题

使用阿里云的负载均衡有一段时间了,最近突然发现后端机器拿到的客户端IP变了,都变成了100开头的内网地址,开始排查问题. 查了一段时间,发现负载均衡团队应该是在11月中旬的时候做过调整,之前我们后端的nginx是通过$remote_addr就可以获取到slb转发过来的客户端ip地址,现在只能通过$http_x_forwarded_for来获取了. 具体的文档可以查看负载均衡获取客户端IP地址 其实问题弄明白了,改起来挺快,但是阿里的同学坚持是我一直使用的不对,但是之前俺这个配置跑起来是没有问题的

nginx+tomcat实现负载均衡,使用redis session共享_nginx

环境准备 1.准备一台nginx服务器 ip192.168.1.133 端口81 安装过程: #首先安装依赖: yum -y install gcc-c++ yum -y install pcre pcre-devel yum -y install zlib zlib-devel yum -y install openssl openssl-devel #注意 : 安装nginx必须使用 root 用户安装 #创建一个nginx目录 mkdir /usr/local/src/nginx #进入到

同一台服务器安装两个tomcat做负载均衡请求响应不一致

问题描述 同一台服务器安装两个tomcat做负载均衡请求响应不一致 同一台服务器安装两个tomcat,做tomcat的负载均衡请求和响应的端口不一样,导致登陆时报404错误. 比如,两个tomcat 8081.8082端口,登陆时请求的是8081端口,验证用户信息,但是响应的是8082端口号,导致404错误. 解决方案 这需要做一些负载均衡的规则,保证同一个session是在一个服务器上处理. 解决方案二: 需要做session共享,tomcat最常见的就是使用memcache存储session

一步一步在Windows中使用MyCat负载均衡 下篇

之前在 一步一步在Windows中使用MyCat负载均衡 上篇 中已经讲了如何配置出MyCat.下面讲其相关的使用. 五.配置MyCat-eye  对于MyCat监控官网还提供一个MyCat-eye web系统来展示它的运行情况. MyCat发展到目前的版本,已经不是一个单纯的MySQL代理了,它的后端可以支持MySQL.SQL Server.Oracle.DB2.PostgreSQL等主流数据库,也支持MongoDB这种新型NoSQL方式的存储,未来还会支持更多类型的存储.而在最终用户看来,无

获取用户IP地址与判断真实IP

获取用户IP地址与判断真实IP function getIp() {     if($_SERVER['HTTP_CLIENT_IP'])     {         return $_SERVER['HTTP_CLIENT_IP'];     } elseif ($_SERVER['HTTP_X_FORWARDED_FOR']) {         return $_SERVER['HTTP_X_FORWARDED_FOR'];     } else {         return $_SE

php获得用户ip地址的比较不错的方法

 这篇文章主要介绍了php获得用户ip地址的方法,需要的朋友可以参考下 REMOTE_ADDR只能获取访问者本地连接中设置的IP,如某大学校园网中自己设置的10.X.XXX.XXX系列IP,而这个函数获取的是局域网网关出口的IP地址,如果访问者使用代理服务器,将不获取代理服务器的IP,而是获取访问者网关的真实IP.如果将这个函数应用到限IP访问的网页中,别人即使通过限IP访问段中的代理服务器,也不能访问该页面.    下面提供一个函数:  代码如下: <?php    // 定义一个函数getI

获取用户Ip地址通用方法与常见安全隐患(HTTP_X_FORWARDED_FOR)_php技巧

分析过程 这个来自一些项目中,获取用户Ip,进行用户操作行为的记录,是常见并且经常使用的. 一般朋友,都会看到如下通用获取IP地址方法. 复制代码 代码如下: function getIP() { if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $realip = $_SERVER['HTTP_X_FORWARDED_FOR']; } elseif (isset($_SERVER['HTTP_CLIENT_IP'])) { $realip = $_S