NGINX SSL正向代理配置

时间:2017-09-20 19:27:04

标签: ssl nginx proxy

我知道NGINX不应该被用作转发代理但是我有要求这样做......无论如何,显然不是很难让http作为转发代理工作但是在尝试时出现问题配置https。我生成了一些自签名证书,然后尝试连接到https://www.google.com,它给了我错误ERR_TUNNEL_CONNECTION_FAILED。这个问题与我的证书有某种关系,但我不知道如何解决这个问题。有谁知道如何实现这个功能?

这是我的配置

server {
    listen 443 ssl;
    root /data/www;

    ssl on;
    ssl_certificate /etc/ssl/certs/server.crt;
    ssl_certificate_key /etc/ssl/certs/server.key;

    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers  ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
    ssl_prefer_server_ciphers on;

    location / {
            resolver 8.8.8.8;
            proxy_pass https://$http_host$uri$is_args$args;
    }
}

1 个答案:

答案 0 :(得分:4)

NGINX不支持HTTPS转发代理的原因是因为它不支持CONNECT方法。但是,如果您有兴趣将其用作HTTPS转发代理,则可以使用ngx_http_proxy_connect_module