Настройки обратного прокси Lighttpd - PullRequest
5 голосов
/ 19 февраля 2012

Я пытаюсь настроить Lighttpd для работы в качестве обратного прокси.Я хочу, чтобы несколько URL-адресов передавались на разные серверы через разные порты на одном компьютере или в локальной сети.

Например:

/ / static / socket / 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 строка неправильно.Я просто не уверен, как еще это сделать.Я новичок в этой области, поэтому я был бы признателен за некоторые толчки в правильном направлении.

Спасибо,

1 Ответ

2 голосов
/ 20 февраля 2012

Строго говоря, блоки else должны быть ненужными.

Что касается вашей реальной проблемы, то в своем вопросе вы указываете, что хотите соответствовать /ajax, но ваше регулярное выражение ищет /ajax/ (обратите внимание на косую черту). Какой URL вы запрашиваете?

...