Dynamic proxy_pass hosts
Maxim Dounin
mdounin at mdounin.ru
Thu Oct 22 16:49:41 MSD 2009
Hello!
On Thu, Oct 22, 2009 at 03:51:41PM +0400, Igor Katson wrote:
> Maxim Dounin wrote:
> >Hello!
> >
> >On Thu, Oct 22, 2009 at 01:17:16PM +0400, Igor Katson wrote:
> >
> >>In Apache it is possible to dynamically alter the proxy_pass remote
> >>host, i.e. like this
> >>
> >>RewriteRule ^/proxy_everything/(.*)$ http://$1 [P]
> >>
> >>So I cant extract the host from the URI, or from the environment
> >>variable etc.
> >>
> >>Is it possible to do the same with nginx?
> >
> >Yes, proxy_pass supports variables since 0.6.18. Note that you
> >must have resolver defined in nginx config if possible upstream
> >hosts include arbitrary hostnames (i.e. not only ip addresses and
> >names defined via upstream{} blocks).
> >
> >http://wiki.nginx.org/NginxHttpProxyModule#proxy_pass
> >http://wiki.nginx.org/NginxHttpCoreModule#resolver
> >
> >Note that wiki topics are a bit garbled, probably it's a good idea
> >to consult original docs too (use google translate if you don't
> >know Russian):
> >
> >http://sysoev.ru/nginx/docs/http/ngx_http_proxy_module.html#proxy_pass
> >http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#resolver
> >
> >Maxim Dounin
> >
> Thanks, Maxim! Well, I am russian, so I can read the docs. Are they
> more up-to-date or detailed? I usually read the wiki
The problem with wiki is that it's rarely synced with official
docs and may be seriously out of date. Additionally as it's wiki
it's regularly edited by users who ofter unaware how things really
work, and this results in wrong/misleading information in many cases.
In this particular case proxy_pass description in wiki has no full
documentation on proxy_pass work with variables (it has some
user-contributed content about variables in proxy_pass, but
written from completely different and wrong point of view), while
resolver just has no description.
Maxim Dounin
More information about the nginx
mailing list