我有一个使用 Nginx 作为网络服务器的 Rails 应用程序(3.2.x)https://myapp.com(虚构名称),一个运行整个软件堆栈的服务器。注意 https,我安装了有效的 SSL 证书。
随着流量的增加,我想在应用程序前面添加一个负载均衡器,所以想法是:
1 个负载均衡器(使用 Nginx)
4 个应用服务器(运行 RubOnRails / Nginx)
1 个数据库服务器
服务器名称为
lb.myapp.com
app1.myapp.com、app2.myapp.com、app3.myapp.com、app4.myapp.com
db.myapp.com
我想将 SSL 处理保持在应用服务器级别(因为我不一定信任负载均衡器和应用服务器之间的网络流量)。
将服务器名称 app1.myapp.com (分别)放入每个应用服务器的 server_name 配置参数中,并将 lb.myapp.com 放入负载均衡器的 server_config 参数中是否正确?
我是否认为我不必设置负载均衡器中设置的 ssl_on、ssl_certificate 和 ssl_certificate_key 配置参数但仅在应用服务器(应该处理 SSL 部分)上设置是否正确?我只会添加
proxy_set_header X-FORWARDED-PROTO https; proxy_redirect off;
到负载均衡器?
我需要什么 SSL 证书,只是 myapp.com 一个证书,还是我需要为不同的应用服务器提供不同的证书?