nginx负载均衡后端RS中获取真实ip

前端proxy配置

####################

worker_processes  1;

events {

worker_connections  1024;

}

http {

include       mime.types;

default_type  application/octet-stream;

sendfile        on;

keepalive_timeout  65;

upstream backend {

server 10.0.0.3:80    max_fails=3 fail_timeout=30s;

server 10.0.0.4:80    max_fails=3 fail_timeout=30s;

}

server {

listen       80;

server_name  www.lvnian.com lvnian.com;

location / {

root   html;

index  index.html index.htm;

proxy_pass http://backend;

proxy_redirect              off;

proxy_set_header            Host $host;

proxy_set_header            X-real-ip $remote_addr;

proxy_set_header            X-Forwarded-For $proxy_add_x_forwarded_for;

##上面四个是记录真实IP,以及可以区分后端不同业务的配置

}

error_page   500 502 503 504  /50x.html;

location = /50x.html {

root   html;

}

}

#####################################

server {

listen       80;

server_name  bbs.lvnian.com lvnian.com;

location / {

root   html;

index  index.html index.htm;

proxy_pass http://backend;

proxy_redirect              off;

proxy_set_header            Host $host;

proxy_set_header            X-real-ip $remote_addr;

proxy_set_header            X-Forwarded-For $proxy_add_x_forwarded_for;

##上面四个是记录真实IP,以及可以区分后端不同业务的配置

}

error_page   500 502 503 504  /50x.html;

location = /50x.html {

root   html;

}

}

}

##################################################

后端RS配置

server {

listen       80;

server_name  www.lvnian.com;

set_real_ip_from   10.0.0.0/24;

real_ip_header     X-Real-IP;

######这两个参数是记录真实IP的

location / {

root   html;

index  index.html index.htm;

}

error_page   500 502 503 504  /50x.html;

access_log  logs/www.access.log;

error_log  logs/www.error.log error;

location = /50x.html {

root   html;

}

location ~ .*\.(php|php5) {

root           www;

fastcgi_pass   127.0.0.1:9000;

fastcgi_index  index.php;

include        fastcgi.conf;

}

}

#######################################

worker_processes  1;

events {

worker_connections  1024;

}

http {

include       mime.types;

default_type  application/octet-stream;

sendfile        on;

keepalive_timeout  65;

server {

listen       80;

server_name  www.lvnian.com;

location / {

root   html;

index  index.html index.htm;

}

error_page   500 502 503 504  /50x.html;

location = /50x.html {

root   html;

}

#########

set_real_ip_from   10.0.0.0/24;

real_ip_header X-Forwarded-For;

######这两个参数是记录真实IP的

}

################################################

server {

listen       80;

server_name  bbs.lvnian.com;

location / {

root   bbs;

index  index.html index.htm;

}

error_page   500 502 503 504  /50x.html;

location = /50x.html {

root   html;

}

#########

set_real_ip_from   10.0.0.0/24;

real_ip_header X-Forwarded-For;

######这两个参数是记录真实IP的

}

}

################################################################################

如果后端RS添加记录真实的IP之后,语法检查无法通过,可能是--with-http_realip_module 模块没有安装。

在已经安装的nginx服务上门,添加nginx模块方法如下

##添加新模块

1.查看nginx编译安装时的命令,安装了哪些模块

/application/nginx/sbin/nginx -V

2.加入需要安装的模块,重新编译

pkill nginx

cd /home/lvnian/tools/nginx-1.6.2

./configure --user=nginx --group=nginx --prefix=/application/nginx-1.6.2 --with-http_stub_status_module --with-http_realip_module --with-http_ssl_module

make

make就可以了,但是不要make install,否则会覆盖

make

3. 替换nginx二进制文件:

cp /app/nginx/sbin/nginx /app/nginx/sbin/nginx.bak

cp ./objs/nginx /app/nginx/sbin/

4.启动nginx

/application/nginx/sbin/nginx -V

/application/nginx/sbin/nginx -t

/application/nginx/sbin/nginx

#######################################################

pkill nginx

cd /home/lvnian/tools/nginx-1.6.2

./configure --user=nginx --group=nginx --prefix=/application/nginx-1.6.2 --with-http_stub_status_module --with-http_realip_module --with-http_ssl_module

make

cp /application/nginx/sbin/nginx /application/nginx/sbin/nginx.bak

cp objs/nginx /application/nginx/sbin/nginx

/application/nginx/sbin/nginx -V

/application/nginx/sbin/nginx -t

时间: 2024-11-04 15:36:53

nginx负载均衡后端RS中获取真实ip的相关文章

nginx负载均衡集群中的session共享说明

在网站使用nginx+php做负载均衡情况下,同一个IP访问同一个页面会被分配到不同的服务器上,如果session不同步的话,就会出现很多问题,比如说最常见的登录状态. 下面罗列几种nginx负载均衡中session同步的方式 1)不使用session,换用cookiesession是存放在服务器端的,cookie是存放在客户端的,我们可以把用户访问页面产生的session放到cookie里面,就是以cookie为中转站.你访问web服务器A,产生了session然后把它放到cookie里面,当

Nginx 负载均衡 后端 监控检测 nginx_upstream_check_module 模块的使用

在使用nginx 的负载均衡 中,我们通常会使用到 Nginx 自带的 ngx_http_proxy_module 健康检测模块. ngx_http_proxy_module 自带的 健康检测模块参数如下: weight   : 轮询权值也是可以用在ip_hash的,默认值为1 max_fails : 允许请求失败的次数,默认为1.当超过最大次数时,返回proxy_next_upstream 模块定义的错误. fail_timeout : 有两层含义,一是在 30s 时间内最多容许 2 次失败:

nginx中获取真实ip(转)

原文:http://blog.csdn.net/a936676463/article/details/8961504 server { listen       80; server_name  localhost; location /{ root   html; index  index.html index.htm; proxy_pass                  http://backend; proxy_redirect              off; proxy_set_

nginx中获取真实ip

nginx反向代理配置时,一般会添加下面的配置: proxy_set_header Host $host;      proxy_set_header X-Real-IP $remote_addr;      proxy_set_header REMOTE-HOST $remote_addr;      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; location / { proxy_pass http://127.0

Nginx中获取真实ip地址

location / { proxy_pass http://localhost; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;    } 原文地址:https://www.cnblogs.com/

Nginx反向代理时tomcat日志获取真实IP

对于nginx+tomcat这种架构,如果后端tomcat配置保持默认,那么tomcat的访问日志里,记录的就是前端nginx的IP地址,而不是真实的访问IP.因此,需要对nginx.tomcat做如下配置: 1.nginx配置增加如下 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

nginx 后端获取真实ip

nginx前端配置 server {listen 80;server_name blog.jinchuang.org; access_log logs/blog.access.log;error_log logs/blog.error.log;location / {proxy_pass http://dis ;                    proxy_set_header Host $host;                    proxy_set_header X-Real-I

nginx前端负载,后端apache获取真实IP设置

原文链接: nginx前端负载,后端apache获取真实IP设置 参考文献: 前端Nginx,后端Apache获取用户真实IP地址  按照第二种方法设置不成功! 网站最前端是nginx,做的PROXY来转发请求到后端的apache上,所以获取的IP 都是NGINX PROXY 机器的IP,这对于分析和记录apache日志等很多基于IP判断的PHP程序都会出现一系列的问题,经过以下两处理便可让apache获取 正式的访问地址:1.修改NGINX的配置文件NGINX.CONF 在里面加上 proxy

N年前Nginx负载均衡在新浪播客中的应用

2008年的新浪播客由静态服务器集群和动态服务器集群两部分组成,静态服务器集群采用Squid做前端缓存,动态服务器也称接口服务器,主要用来实现显示播放数,记录播放日志等等. 接口服务器上采用F5 BIG-IP硬件四/七层负载均衡交换机,对4台Nginx反向代理服务器进行四层负载均衡,由这四台nginx服务器判断 URL,进行分组,对后端3组web服务器进行七层负载均衡. F5 BIG-IP后端的3组web服务器,配置不一样,第一组内存密集型,技术主要是PHP+Mencache服务: 第2组为 C