Haproxy重写主机,但发送原来的一个服务器?

目前,我有nginx> 25 x nginx + fcgi

主要的nginx,负载平衡和每个虚拟主机听不同的ip(不同的产品)。

一些ips会收到不同的主机名,并将它们重写回到后端服务器,如:

… http://some-random-url.com/path

GET /pathHTTP / 1.1

主持人:app1

X-Original-Host:some-random-url.com

X-Forwarded-For:12.34.56.78

….

我们正在用haproxyreplace主代理(更好的负载平衡algorithm),但我不知道如何附加原始主机。 (我找不到像nginx的$ host这样的variables的任何文档)。

我可以重写像这样的url:

reqirep ^主持人:主持人:\ app1

但“app1”仍然需要原始的主机名来做业务逻辑。

我想在不同的端口上运行每个应用程序,但问题是,我希望nginx的httpchk适用于所有的后端服务器,每个应用程序做一个backend意味着每个backend每秒10个应用程序x 10次检查= 10次检查(除非日志数据说谎)。

任何人有一个想法?

只需保留Host标头,HAProxy就不会正常进行骚扰,所以如果你放置它,它将被传递给你的应用服务器。