我正在使用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测试页。
答案 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 )
)
)
}