Я пытаюсь настроить Lighttpd для работы в качестве обратного прокси. Я хочу иметь несколько URL-адресов, которые проксируются на разные серверы через разные порты либо на одном компьютере, либо в локальной сети.
Например:
// статический / сокет / ajax
Lighttpd будет проксировать все подключения, кроме тех, что к /static
. Я хочу обслуживать все запросы к /static
непосредственно из этого экземпляра lighttpd.
Вот файл конфигурации для mod_proxy:
##
# Serve Static Content via Lighttpd.
#
$HTTP["url"] =~ "^/static/" {
server.document-root = "/path/to/my/static/files"
accesslog.filename = rootdir + "/var/log/static.log"
server.errorlog = rootdir + "/var/log/static.error.log"
}
##
# Proxy to instance of Socket.io.
#
else $HTTP["url"] =~ "^/socket/" {
accesslog.filename = rootdir + "/var/log/socket.log"
server.errorlog = rootdir + "/var/log/socket.error.log"
proxy.server = (
"" => ( (
"host" => "127.0.0.1",
"port" => 3000
) )
)
}
##
# Proxy to AJAX backend.
#
else $HTTP["url"] =~ "^/ajax/" {
accesslog.filename = rootdir + "/var/log/ajax.log"
server.errorlog = rootdir + "/var/log/ajax.error.log"
proxy.server = (
"" => ( (
"host" => "127.0.0.1",
"port" => 4000
) )
)
}
##
# Proxy to something that returns my layout.
#
else $HTTP["url"] =~ "^/" {
accesslog.filename = rootdir + "/var/log/root.log"
server.errorlog = rootdir + "/var/log/root.error.log"
proxy.server = (
"" => ( (
"host" => "127.0.0.1",
"port" => 5000
) )
)
}
Я почти уверен, что мои регулярные выражения неверны. Я также думаю, что строка else
неверна. Я просто не уверен, как еще это сделать. Я новичок в этой области, поэтому я был бы признателен за некоторые толчки в правильном направлении.
Спасибо,