我目前有nginx作为负载均衡器运行,反向代理运行龙卷风。
一旦我设置了我的nginx来处理端口443上的SSL连接并重定向到相应的龙卷风后端。我是否需要更改龙卷风配置才能处理HTTPS?我正在获得nginx来处理证书:
ssl_certificate "/etc/pki/nginx/server.crt";
ssl_certificate_key "/etc/pki/nginx/private/server.key";
龙卷风到目前为止的所有配置都是将龙卷风用作独立的网络服务器,并在设置中处理这些认证I.e。
http_server = tornado.httpserver.HTTPServer(application, ssl_options={
"certfile": "server.csr",
"keyfile": "server.key",
})
我需要在监听进程中提供龙卷风以处理来自nginx的传入SSL连接的哪些设置?
由于
答案 0 :(得分:2)
答案取决于您是否要在nginx和龙卷风服务器之间使用TLS,或者允许该链接处于清除状态。
要加密连接,请为龙卷风服务器提供一个证书/密钥对,该证书/密钥对与nginx用于联系它们的主机名相匹配。您可能希望为此使用自签名CA,并将nginx配置为信任该CA的后端连接。在这种情况下,nginx配置的insert into `mgnc_cataloginventory_stock_item` (`product_id`, `stock_id`, `qty`, `use_config_min_qty`, `is_qty_decimal`, `use_config_backorders`, `use_config_min_sale_qty`, `use_config_max_sale_qty`, `is_in_stock`, `low_stock_date`, `use_config_notify_stock_qty`, `use_config_manage_stock`, `stock_status_changed_auto`, `use_config_qty_increments`, `use_config_enable_qty_inc`, `is_decimal_divided`)
values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
部分将使用backends
。
要不加密nginx和tornado之间的连接(但将流量留给最终用户加密),请从龙卷风服务器中删除ssl配置,并在nginx https://
部分中使用http://
。< / p>
在这两种情况下,您可能希望在Tornado HTTP服务器中设置backends
并添加http://www.tornadoweb.org/en/stable/guide/running.html#running-behind-a-load-balancer中的xheaders=True
指令,以便正确设置proxy_set_header
之类的字段