如何根据URL参数创建lighttpd代理规则以在不同端口上重定向?

时间:2009-10-13 08:40:57

标签: proxy lighttpd

我目前在proxy.server中有lighttpd.conf规则,将routemsg.pl的所有请求转发到端口1530:

$HTTP["url"] =~ "/routemsg.pl" {
    proxy.server = ( "" => ( ( "host" => "127.0.0.1", "port" => 1528) ) )
}

如何更改规则以允许请求者在URL中传递端口参数,然后将该参数用作代理请求的端口?

例如:http://www.myip.com/routemsg.pl?p=1531的请求将转到端口1531上的127.0.0.1

1 个答案:

答案 0 :(得分:2)

您可以尝试使用$HTTP["querystring"]并使用以下条件捕获端口:

$HTTP["url"] =~ "/routemsg.pl" {
    $HTTP["querystring"] =~ "p=([0-9]+)" {
        proxy.server = ( "" => ( ( "host" => "127.0.0.1", "port" => "%1") ) )
    }
}

我很遗憾没有一个可以确认它现在正常工作的设置,我很害怕。 :(