nginx不发送健康检查消息给配置的反向代理

时间:2019-04-04 09:55:43

标签: nginx nginx-reverse-proxy nginx-config

好吧,我在Linux sle11上使用nginx-1.7.2,

我配置了反向代理,并且呼叫路由良好, 现在,当我使用“ nginx_upstream_check”模块配置运行状况检查时,没有发送到服务器的运行状况检查消息,这是我的配置文件。

    upstream ote_server_list
 {
    server 10.18.149.5:1111;
    server 10.18.149.5:2222;
    check interval=5000 rise=2 fall=3 timeout=3000 type=http;
    check_http_send "HEAD / HTTP/1.0\r\n\r\n";
}

    server
         {
        listen       8488;
        server_name  localhost;

        access_log  logs/host.access.log  main;
        location /
        {
            root   html;
            index  index.html index.htm;
            proxy_pass      http://ote_server_list/ote/transcode/;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

我还在服务器上检查了tcpdump,它没有收到来自nginx IP的任何消息。我的配置有什么问题吗?

1 个答案:

答案 0 :(得分:0)

我找到了原因,这是我的错误,我在编译“ nginx_upstream_check”模块之前忘记应用补丁,补丁文件已经存在于从github下载的 nginx_upstream_check_module-master.zip 中。 / p>

解决方案:

cd /root/nginx/nginx-1.7.2;
patch -p1 < /root/nginx/nginx-1.7.2/src/nginx_upstream_check_module-master/check_1.7.2+.patch;

应用补丁后,执行configure make并使用新编译的 nginx 二进制文件。

现在我可以看到从nginx发送到上游服务器的HealthCheck消息。

enter image description here