Puncte:0

Cum repar eroarea net::ERR_SSL_PROTOCOL_ERROR când pun nginx în fața lui Tomcat?

drapel us

Cum repar eroarea net::ERR_SSL_PROTOCOL_ERROR când pun nginx în fața lui Tomcat?


#utilizator nimeni;
lucrător_procese 1;

#error_log logs/error.log;
#error_log logs/error.log notificare;
#error_log logs/error.log info;

#pid logs/nginx.pid;


evenimente {
    conexiuni_muncitor 1024;
}


http {
    include mime.tipuri;
    aplicație de tip_default/octet-stream;

    #log_format principal „$remote_addr - $remote_user [$time_local] „$request” '
    # '$status $body_bytes_sent "$http_referer" '
    # '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log logs/access.log principal;

    sendfile activat;
    #tcp_nopush on;

    #keepalive_timeout 0;
    keepalive_timeout 65;

    pisica din amonte {
        server 127.0.0.1:8330;
    }

    set de caractere utf-8;



    #gzip activat;

    Server {
        asculta 8331;
        nume_server gazdă locală;

        # return 301 https://$host$request_uri;
        #charset koi8-r;

        #access_log logs/host.access.log principal;

        Locație / {
            # rădăcină html;
            # index index.html index.htm;
            # proxy_pass http://sgmng.pluggolf.com;

            proxy_set_header Gazdă $http_host;
            proxy_set_header X-Real-IP $adresă_la distanță;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $schema;
            proxy_set_header X-NginX-Proxy true;

            proxy_http_versiunea 1.1;
            proxy_set_header Actualizare $http_upgrade;
            proxy_set_header Conexiune „Actualizare”;
            proxy_set_header Origine „”;
            # nou

            # Copiați calea în amonte setată mai sus
            proxy_pass https://tomcat;
            # proxy_redirect dezactivat;
            set de caractere utf-8;
        }

        #error_page 404 /404.html;

        # redirecționează paginile de eroare ale serverului către pagina statică /50x.html
        #
        pagina_eroare 500 502 503 504 /50x.html;
        locație = /50x.html {
            rădăcină html;
        }

        # proxy scripturile PHP către Apache care ascultă pe 127.0.0.1:80
        #
        #locație ~ \.php$ {
        # proxy_pass http://127.0.0.1;
        #}

        # treceți scripturile PHP către serverul FastCGI care ascultă pe 127.0.0.1:9000
        #
        #locație ~ \.php$ {
        # rădăcină html;
        # fastcgi_pass 127.0.0.1:9000;
        # fastcgi_index index.php;
        # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
        # include fastcgi_params;
        #}

        # interzice accesul la fișierele .htaccess, dacă rădăcina documentului Apache
        # de acord cu cel al lui nginx
        #
        #locație ~ /\.ht {
        # nega totul;
        #}
    }


    # o altă gazdă virtuală folosind o combinație de configurație bazată pe IP, nume și port
    #
    # Server {
    # asculta 8080;
    # ascultă somename:8080;
    # server_name somename alias another.alias;

    # Locație / {
    # rădăcină html;
    # index index.html index.htm;
    # }
    # }


    # Server HTTPS
    
    Server {
       asculta 8332 ssl;
       nume_server gazdă locală;

       set de caractere utf-8;

       ssl_certificate D:/service/cbdc_dt/nginx/cert/plusity.crt;
       ssl_certificate_key D:/service/cbdc_dt/nginx/cert/plusity.key;

    # ssl_session_cache shared:SSL:1m;
    # ssl_session_timeout 5m;

       ssl_ciphers HIGH:!aNULL:!MD5;
       ssl_prefer_server_ciphers activat;

       Locație / {
        # rădăcină html;
        # index index.html index.htm;
        proxy_pass http://tomcat;

        proxy_set_header Gazdă $http_host;
        proxy_set_header X-Real_IP $adresă_la distanță;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            # proxy_set_header X-Forwarded-Proto $scheme;
            # proxy_set_header X-NginX-Proxy true;

        proxy_set_header Actualizare $http_upgrade;
        proxy_set_header Conexiune '';
        proxy_set_header Origine „”;
        proxy_http_versiunea 1.1;
        codificarea_transfer_în bucăți dezactivată;

        proxy_buffering dezactivat;
        proxy_cache dezactivat;
        proxy_read_timeout 7d;
        proxy_redirect dezactivat;
        set de caractere utf-8;
       }
    }

}

După ce am aplicat ssl la toate solicitările care vin către porturile 8331 și 8332, după cum urmează, am scris un cod care redirecționează către portul 8330 al tomcat.

Cu toate acestea, problema este că, dacă accesați 8330 prin nginx așa, GET https://serverIP:8330/itf/subscribe net::ERR_SSL_PROTOCOL_ERROR apare o eroare.

/itf/subscribe funcționează normal când nginx nu este prezent.

Dar se pare că există o problemă atunci când suni de la adresa https.

Mă întreb cum pot rezolva această problemă.

Toate cele bune!

Puncte:1
drapel us

Conform configurației dvs. nginx, portul 8330 este gestionat de serverul dvs. din amonte (Tomcat). Dacă nu ați configurat Tomcat să utilizeze SSL, atunci veți primi o eroare SSL când vă conectați la acesta cu un https URL.

Cu configurația dvs., trebuie să vă conectați la https://example.com:8332/ pentru a utiliza SSL. Aceasta se conectează la portul nginx care este configurat pentru SSL, apoi nginx trimite cererea către serverul Tomcat.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.