Ok, tentei isso no meu testbed nginx e recebi o seguinte no log:
2011/08/29 22:35:31 [error] 10074#0: *1257 no host in upstream "", client: 10.103.0.9, server: localhost, request: "GET /proxy/ya.ru HTTP/1.1", host: "10.110.0.42"
Então, o nginx não é uma ferramenta certa para fazer isso, hosts upstream não podem ser definidos em tempo de execução.