Nginx前端龙卷风

时间:2017-03-13 23:56:15

标签: tornado

我目前有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连接的哪些设置?

由于

1 个答案:

答案 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之类的字段