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

Andrey Ignatov andr.pl at gmail.com
Tue Mar 25 13:52:48 MSK 2008


On Tue, Mar 25, 2008 at 01:26:35PM +0300, Vladimir Rusinov wrote:
> Доброго времени суток!
> 
> Имеется 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?

http://sysoev.ru/nginx/docs/http/ngx_http_proxy_module.html#proxy_set_header

-- 
Andrey Ignatov
Skript, System administrator





More information about the nginx-ru mailing list