在大型网站或者对高可用有要求的架构中,通常需要多台web服务器同时为用户服务,那么,如何直观地了解负载均衡设备将请求转向了哪台web机器上呢?

方法1: 在编译安装Nginx之前修改Nginx的版本信息
1> vi src/http/ngx_http_header_filter_module.c
49行
找到static char ngx_http_server_string[] = "Server: nginx" CRLF; 这一行,修改里面的Server:nginx为你想要的名称,如:Server:ff-bb
2 >vi src/core/nginx.h
找到如下几行并按照自己的意愿修改,如:
#define nginx_version 0110
#define NGINX_VERSION "0.1.10"
#define NGINX_VER "ff-bb/" NGINX_VERSION

#define NGINX_VAR "ff-bb"

继续编译安装完Nginx


然后安装Firefox的插件firebug ,安装好之后,按F12 可以看到firebug的控制面板,点击网络标签,并启用面板
展开任意一个请求,能看到头部信息: 看server的值就知道是哪个机器
响应头信息原始头信息
Connectionkeep-alive
Content-Encodinggzip
Content-Languagezh-CN
Content-Typetext/html;charset=utf-8
DateFri, 12 Jul 2013 08:03:44 GMT
Serverff-bb.cn/1.2.5
Transfer-Encodingchunked
VaryAccept-Encoding
方法2: 简单一些,也不用重新编译Nginx,通过Nginx的add_header指令
幸运的是,我们可以通过Nginx的add_header指令配合Firefox的插件firebug相结合来实现。
首先,修改nginx的配置
在server里 增加一行; 如下
add_header Vary ff-bb-1;
reload Nginx配置
然后安装Firefox的插件firebug ,安装好之后,按F12 可以看到firebug的控制面板,点击网络标签,并启用面板
展开任意一个请求,能看到头部信息: Vary的值就知道是哪台机器
响应头信息原始头信息
Connectionkeep-alive
Content-Encodinggzip
Content-Languagezh-CN
Content-Typetext/html;charset=utf-8
DateFri, 12 Jul 2013 08:03:44 GMT
Serverff-bb.cn.2/1.2.5
Transfer-Encodingchunked
VaryAccept-Encoding,ff-bb-1