如何通过Apache SSLstream量槽nginx代理?

我想在Fedora 8上设置nginx 0.6.33作为运行Apache的后端的负载平衡器。 我没有任何问题将其configuration为默认的http端口80,但我不知道如何做SSL(443)。 我不希望在nginx框中安装SSL证书,我希望它将整个stream量传递给已经安装证书的Apache服务器。

我的configuration如下所示:

http { upstream backend{ server 192.168.0.1; server 192.168.0.2; } upstream secure{ server 192.168.0.1:443; server 192.168.0.2:443; } server{ listen 80; server_name www.my-server.net; location / { proxy_pass http://backend; proxy_set_header Host $http_host; proxy_redirect false; } } server{ listen 443; server_name www.my-server.net; location / { proxy_pass https://secure; proxy_set_header Host $http_host; proxy_redirect false; } } } 

不要使用nginx作为负载均衡器; 它不是为这样的事情devise的。 具体来说,就你而言,它不支持将TCP连接透明地传递到后端,所以你需要在nginx中设置你的SSL证书,并以普通的HTTP传回Apache。

你需要一个真正的L3负载均衡器,比如LVS,或者像haproxy这样的TCP代理,这样SSL连接就可以直接stream向Apache。