Heim  >  Fragen und Antworten  >  Hauptteil

Proxy_Pass – Clientseitiges HTTP-Protokoll greift auf Nginx zu, warum kann Proxy-Nginx nicht für https umgekehrt werden?

Ich habe den folgenden virtuellen Host in Nginx konfiguriert.
Wenn ich http://127.0.0.1:8112/ besuche, sollte es möglich sein, den Proxy auf https//www.baidu.com umzukehren, da die Überprüfung des Serverzertifikats während des Proxy-Passes ausgeführt werden sollte.

server {
    listen 8112;
    location / {
            proxy_pass https://test8112;
    }
}
upstream test81122 {
    server www.baidu.com;

}

Als ich jedoch das Protokoll error.log überprüfte, fand ich einen Fehler wie unten gezeigt:
2017/04/16 21:34:14 [error] 14031#0: *1 SSL_do_handshake() failed (SSL: error:140770FC:SSL Routinen: SSL23_GET_SERVER_HELLO:unbekanntes Protokoll) während SSL-Handshaking zum Upstream, Client: 192.168.153.1, Server: saas-portal.eastdc.cn, Anfrage: „GET / HTTP/1.1“, Upstream: „https://14.215.177.37: 80/ ", Host: "127.0.0.1:8112"

Wenn ich das https-Protokoll verwende, um auf Nginx zuzugreifen, kann ich normal auf https://www.baidu.com zugreifen.
Ich habe den Nginx-Quellcode noch nie gesehen, bitte fragen Sie um Hilfe.

我想大声告诉你我想大声告诉你2673 Tage vor1787

Antworte allen(1)Ich werde antworten

  • 某草草

    某草草2017-06-24 09:46:30

    我又去测试了,亲测可以http接入nginx,https出nginx,如下是我的测试配置,可以访问到baidu首页。

    server {
        listen 8113;
        server_name saas-portal.test.cn;
        location / {
                proxy_set_header Host "www.baidu.com";
                proxy_pass https://test8113;
        }
    }
    upstream test8113 {
        server 115.239.211.112:443;#此ip为百度ip
    }

    Antwort
    0
  • StornierenAntwort