Chinaunix首页 | 论坛 | 博客
  • 博客访问: 341679
  • 博文数量: 58
  • 博客积分: 30
  • 博客等级: 民兵
  • 技术积分: 543
  • 用 户 组: 普通用户
  • 注册时间: 2011-11-25 01:47
个人简介

我们都是没伞的孩子,所以我只能靠自己。

文章分类

全部博文(58)

文章存档

2019年(2)

2018年(1)

2017年(1)

2016年(2)

2015年(22)

2014年(20)

2013年(10)

我的朋友

分类: 系统运维

2015-06-09 10:38:03

我以前的博客里有分享过多级Nginx如何获取真实IP和原理,http://blog.chinaunix.net/uid-26479545-id-4815341.html
我现在贴一下前端Nginx和后端Nginx的部分代码,有些设置不一定全部是适合你,重点看红色字体部分
前端Nginx
proxy_set_header        Host $host;
proxy_set_header        X-Real-IP $remote_addr; #后端的Web服务器可以通过X-Forwarded-For获取用户真实IP
proxy_set_header        X-Forwarded-For   $proxy_add_x_forwarded_for;
client_max_body_size    50m;          #允许客户端请求的最大单文件字节数(客户端能上传的最大文件)
client_body_buffer_size 256k;         #缓冲区代理缓冲用户端请求的最大字节数
proxy_connect_timeout   300;          #nginx跟后端服务器连接超时时间(代理连接超时)
proxy_send_timeout      300;          #后端服务器数据回传时间(代理发送超时)
proxy_read_timeout      600;          #连接成功后,后端服务器响应时间(代理接收超时)
proxy_buffering         on;           #开启从后端被代理服务器的响应内容缓冲
proxy_buffer_size       32k;          #设置代理服务器(nginx)保存用户头信息的缓冲区大小
proxy_buffers           4 32k;        #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置
proxy_busy_buffers_size 64k;          #高负荷下缓冲大小(proxy_buffers_size*2)
proxy_temp_file_write_size 64k;       #设定缓存文件夹大小,大于这个值,将从upstream服务器传递请求,而不缓冲到磁盘
proxy_max_temp_file_size 128m;
proxy_ignore_client_abort on;         #不允许代理端(nginx)主动关闭连接
proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;

后端Nginx
proxy_set_header        Host $host;
proxy_set_header        X-Real-IP $remote_addr; #后端的Web服务器可以通过X-Forwarded-For获取用户真实IP
proxy_set_header        X-Forwarded-For   $proxy_add_x_forwarded_for;
client_max_body_size    50m;          #允许客户端请求的最大单文件字节数(客户端能上传的最大文件)
client_body_buffer_size 256k;         #缓冲区代理缓冲用户端请求的最大字节数
proxy_connect_timeout   300;          #nginx跟后端服务器连接超时时间(代理连接超时)
proxy_send_timeout      300;          #后端服务器数据回传时间(代理发送超时)
proxy_read_timeout      600;          #连接成功后,后端服务器响应时间(代理接收超时)
proxy_buffering         on;           #开启从后端被代理服务器的响应内容缓冲
proxy_buffer_size       32k;          #设置代理服务器(nginx)保存用户头信息的缓冲区大小
proxy_buffers           4 32k;        #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置
proxy_busy_buffers_size 64k;          #高负荷下缓冲大小(proxy_buffers_size*2)
proxy_temp_file_write_size 64k;       #设定缓存文件夹大小,大于这个值,将从upstream服务器传递请求,而不缓冲到磁盘
proxy_max_temp_file_size 128m;
proxy_ignore_client_abort on;         #不允许代理端(nginx)主动关闭连接
proxy_next_upstream error timeout invalid_header http_500 http_503 http_404;

重点是要加入一下内容
                set_real_ip_from 192.168.2.1; #排除前端Nginx的IP地址,有几个代理就加多少个IP
                set_real_ip_from 192.168.20.51;
                real_ip_header X-Real-IP;
                real_ip_recursive on;  #这个指令一直没明白什么意思
阅读(4081) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~