使用Nginx作为反向代理服务器的时候会发生这种情况。
客户端请求 -> Nginx转发 -> tomcat服务器
默认配置的情况下,tomcat服务器拿到的头信息都会变成Nginx服务器代理之后的头信息,例如Host将会变为Nginx服务器的IP。
那么tomcat服务器在分析服务器日志的时候就拿不到真实客户端的ip了。所以需要在nginx配置如下信息。
server_name www.mydomain.com;
location /myproj/repos {
set $fixed_destination $http_destination;
if ( $http_destination ~* ^https(.*)$ )
{
set $fixed_destination http$1;
}
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Destination $fixed_destination;
proxy_pass http://subversion_hosts;
}
代理的时候会重新设置header的信息为原客户端的请求header。麻烦的时候header信息得一个一个设置。
参考:http://wiki.nginx.org/NginxChsHttpProxyModule#proxy_set_header
分享到:
相关推荐
例如,`proxy_protocol`可以启用Nginx与上游服务器之间的代理协议,以便获取客户端的真实IP;`proxy_set_header`可以设置传递给后端服务器的头部信息。 总之,Nginx的TCP代理转发功能使得我们可以利用其强大的性能...
**Nginx代理转发详解** 在现代Web应用架构中,Nginx作为一款高性能的HTTP和反向代理服务器,常被用作前端服务器,用于处理客户端的请求,并将这些请求转发到适当的后端服务。本篇文章将深入探讨Nginx的代理转发功能...
这可能需要使用SSL/TLS加密、访问控制列表和防火墙策略等手段。 总之,RTSP服务器转发是实现高效、可扩展流媒体服务的关键技术,它通过转发机制优化了服务器性能,增强了服务的可靠性和可用性。理解并正确应用这一...
首先,我们需要理解Nginx转发socket端口的基本配置。在Nginx配置文件中,可以通过`location`指令定义一个特定的URL路径,将所有匹配该路径的请求转发到后端服务器。例如,对于聊天功能,我们可以设置 `/chat/` 作为...
但是,在 SLB 后,Nginx 或 Apache 服务器无法直接获取用户的真实 IP 地址,因为用户的请求是通过 SLB 转发到服务器的。为了解决这个问题,我们可以使用 Nginx 的 http_realip_module 模块或 Apache 的 mod_rpaf ...
在本文中,我们将详细介绍如何使用 Nginx 实现 Header 转发灰度测试。灰度测试是一种重要的测试方法,可以帮助我们在不影响生产环境的情况下,测试新的服务或功能。我们将使用 Nginx 作为反向代理服务器,来实现 ...
在反向代理模式下,Nginx接收到的请求头部信息可能包含多个IP地址,而我们通常需要的是原始客户端(用户)的IP地址,即真实IP。 要获取Nginx反向代理下的真实IP,主要涉及以下两个关键配置: 1. **$remote_addr ...
- 反向代理:Nginx可以作为反向代理服务器,接收来自客户端的请求,并将这些请求转发到后端服务器进行处理,隐藏了真实服务器的IP和配置细节。 - 负载均衡:Nginx通过设置不同的负载均衡策略(如轮询、权重、最少...
根据给定文件信息,以下知识点将详细阐述如何在Windows环境下使用Nginx搭建图片服务器。 首先,搭建图片服务器涉及到的基本步骤是在Windows系统上下载并安装Nginx。在进行安装之前,访问Nginx官方网站下载适合...
### Nginx 使用文档 #### 一、Nginx 入门 ##### 1.1 什么是 Nginx? Nginx 是一款高效能的 HTTP 服务器、反向代理服务器及电子邮件 (IMAP/POP3) 代理服务器,由俄罗斯程序员 Igor Sysoev 开发。Nginx 能够支持...
- **修改Nginx的header伪装服务器**:为了隐藏服务器的真实身份,可以修改Nginx发送的响应头,使用其他服务器名称或版本号。 - **Tcmalloc优化Nginx性能**:Tcmalloc是一个高效的内存分配器,可以显著提高Nginx的...
2. **反向代理**:Nginx 可以作为反向代理服务器,隐藏后端真实服务器,实现负载均衡,提高服务可用性和响应速度。 3. **负载均衡**:Nginx 内置了负载均衡策略,如轮询、最少连接、IP哈希等,可以根据实际需求配置...
总之,Nginx配置非80端口的端口转发需要关注`listen`指令、`proxy_pass`以及相关的请求头设置,确保后端服务器能够正确处理转发过来的请求。同时,合理的配置文件组织结构有利于管理和维护。通过深入理解Nginx的配置...
1. **反向代理**:反向代理隐藏了真实服务器,客户端看不到服务器的IP和端口,所有请求都由Nginx处理,提高了服务器集群的可用性和安全性。 2. **Window代理**:在Windows环境下,Nginx可以作为HTTP代理服务器,允许...
3. 反向代理基础:阐述反向代理的概念,Nginx如何作为前端服务器接收请求并转发给后端真实服务器,实现动静分离,提高服务可用性。 4. 负载均衡:介绍Nginx的负载均衡策略,如轮询、最少连接、IP哈希等,以及如何...
Nginx的核心功能之一是反向代理,它能够将客户端的请求转发给后端的服务器处理,从而隐藏了真实的服务器IP和端口,提供负载均衡、安全防护等作用。配置反向代理时,需要在nginx.conf文件中添加相应的server块,并...
- **反向代理服务**:Nginx的反向代理功能可以隐藏真实的服务器IP,客户端的请求首先到达Nginx,然后Nginx根据配置将请求转发到适当的后端服务器。这有助于提高网站的安全性,同时可以实现负载均衡。 - **负载...
2. **反向代理**:Nginx可以作为反向代理服务器,隐藏后端真实服务器,均衡负载,提高系统可用性和响应速度。通过设置代理规则,可以将请求转发到不同的后端服务器。 3. **负载均衡**:Nginx支持多种负载均衡策略,...
2. **反向代理**:Nginx 可以作为反向代理服务器,将用户的请求转发到后端的多个服务器上,隐藏了后端服务器的真实结构,提高系统的可扩展性和安全性。 3. **负载均衡**:Nginx 提供了多种负载均衡策略,如轮询、...