LINUX.ORG.RU

Lighttpd as reverse proxy

 


0

1

Всем привет!
Парни, если кто сталкивался, подскажите плиз.
На шлюзе стоит lighttpd, используется в качестве reverse прокси сервера (проксирует запросы снаружи к внутренним серверам в локалке)
Выбор lighttpd связан с тем, что у него LDAP нормально работает, практически без ограничений, а nginx-auth-ldap так и не удалось завести
А LDAP надо.
Вобщем-то вопрос связан с использованием mod_setenv, нужно передавать в заголовке X-Real-IP реальный адрес клиента, я так понял, что это делается при помощи setenv.add-request-header, передать на бекенд какое то статичное значение не составляется труда:

server.modules += ( "mod_proxy" )
server.modules += ( "mod_setenv" )
$HTTP["host"] =~ "example.ru" {
  proxy.balance = "hash"
  setenv.add-request-header = (
    "X-Real-IP" => "1.2.3.4"
  )
  proxy.server  = ( "" => ( ( "host" => "172.27.1.172" ) ) )
}

Но, пока что я так и не догнал, возможно ли вобще использовать переменные в качестве значений для элементов массивов.
Вроде как при реврайтах так можно делать.

Что то типа такого возможно?

server.modules += ( "mod_proxy" )
server.modules += ( "mod_setenv" )
$HTTP["host"] =~ "example.ru" {
  proxy.balance = "hash"
  $HTTP["remoteip"] =~ "^(.*)$" {
    setenv.add-request-header = (
      "X-Real-IP" => $1
    )
  }
  proxy.server  = ( "" => ( ( "host" => "172.27.1.172" ) ) )
}



Последнее исправление: cetjs2 (всего исправлений: 1)

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.