Всем привет!
Парни, если кто сталкивался, подскажите плиз.
На шлюзе стоит 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" ) ) )
}