Переопределить hostname

Vladimir Rusinov vladimir at greenmice.info
Tue Mar 25 13:26:35 MSK 2008


Доброго времени суток!

Имеется nginx, который является фронтендом для некого jboss сервиса.
Проблема в том, что библиотека struts, используемая в jboss (или еще
какая-то) судя по всему берет значение доменного из запроса. По этому есть
делать proxy_pass http://127.0.0.1:8080/ везде, где используются абсолютные
адреса (<base ...> и редиректы) вылезает 127.0.0.1.

В качестве костылика было сделано следующее:
location / {
    proxy_pass      http://domain.name:8080/;
}
domain.name прописано в /etc/hosts как 127.0.0.1.

В результате jboss возвращает везде правильные ссылки
(http://domain.name/тратата),
однако понятно что это костылик, который делает распределение нагрузки и
fail-over невозможным.

Jboss - жуткий монстр, который лучше не трогать лишний раз, да и я не очень
хорошо с ним знаком, поэтому (и еще по некоторым причинам) было бы гораздо
удобнее переопределить имя хоста с помощью nginx, т.е. я хочу сделать что-то
типа

location / {
    proxy_pass      http://127.0.0.1:8080/;
    param hostname 'domain.name';
}

Дабы nginx коннектился на 127.0.0.1:8080, а в GET/POST/... запросах указывал
domain.name.

Возможно это как-то можно сделать с помощью ngx_http_headers_module?

-- 
Vladimir Rusinov
Voronezh, Russia
UNIX Admin @ Murano Software
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20080325/3c04590f/attachment.html>


More information about the nginx-ru mailing list