Lighttpd负载均衡配置

时间:2013-01-10 11:20:15

标签: configuration localhost port load-balancing lighttpd

我正在使用Lighttpd 1.4.30 在Play Framework中配置负载均衡器。

我在lighttpd-inc.conf中给出了如下条目。

$HTTP["host"] =~ "http://10.74.9.109:9020" {
proxy.balance = "round-robin" proxy.server = ( "/" =>
( ( "host" => "10.74.9.109", "port" => 9020 ) ) )
}

$HTTP["host"] =~ "http://10.74.9.109:80" {
    proxy.balance = "round-robin" proxy.server = ( "/" => ( 
          ( "host" => "10.74.9.109", "port" => 9020 ), 
          ( "host" => "10.74.9.109", "port" => 9030 ) ) 
    )
}

我的播放应用程序在端口9020,9030上正常运行。

但是当我尝试http://localhost:80时,我的负载均衡器应该将请求转移到任何未发生的端口。我只获得了Lighttpd测试页。

1 个答案:

答案 0 :(得分:1)

首先确保您的server.modules数组中有mod_proxy。

我认为使用$HTTP["host"]是问题所在。您应该像$SERVER["socket"]那样使用:

$SERVER["socket"] == ":9020" {
    proxy.server = (
        "/" => (
            (
                "host" => "10.74.9.109",
                "port" => 9020
            )
        )
    )
}

$SERVER["socket"] == ":80" {
    proxy.server = (
        "/" => ( 
              ( "host" => "10.74.9.109", "port" => 9020 ), 
              ( "host" => "10.74.9.109", "port" => 9030 )
        ) 
    )
}