Возвращает 301 с соответствующими заголовками местоположения, если запрос имени хоста == www.xyz.com
Браузер сделает все остальное.
Вы можете сделать это с любой стороны прокси. Но я предполагаю, что имеет смысл сделать что-то вроде этого:
http.createServer(function (req, res) {
//
// Put your custom server logic here, then proxy
//
if (req.headers.host == 'www.xyz.com') {
res.writeHead(301, {'Location': 'xyz.com/' + req.url});
res.end();
}
else {
proxy.proxyRequest(req, res, {
host: 'localhost',
port: 9000
});
}
}).listen(80);