Ich habe Nginx konfiguriert Proxy-HTTPS-Verkehr zu einem HTTP-Server läuft auf dem gleichen Rechner.Nginx Proxy https zu http auf Nicht-Standard-Port?
Alles funktioniert gut, wenn ich Nginx auf/Proxy von https Port 443 zu hören konfigurieren. Aber ich möchte wirklich auf einem nicht standard-Port hören. Wenn ich einen nicht standardmäßigen Port konfiguriere, empfängt nginx die Anfrage und sendet sie an meinen HTTP-Server, so wie es sein sollte, aber der Server antwortet mit einer HTTP-Weiterleitung zurück zum Browser, die ihn an 'https: // server weiterleitet. com/someurl ". Ich meine, die Weiterleitungs-URL sieht gut aus, bis auf den richtigen Port. Vermisse ich einen HTTP-Header, den ich im Proxy festlegen muss?
Insbesondere ich führe eine http-Instanz von Tracks . http://getontracks.org Wenn es darauf ankommt
Meine (Arbeits auf Standard-Port) nginx-Server-Konfiguration:
location /{
proxy_pass http://localhost:50000;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_redirect off;
}
Danke. Ich habe einige Forenbeiträge gefunden, in denen vorgeschlagen wurde, einen HTTP X-Forwarded-Port-Header zu setzen, auch wenn das noch mehr als ein nicht standardmäßiger "Nicht-Standard" -Header erscheint. Ich habe versucht, das in der Nginx-Konfiguration ohne Glück zu setzen. Ich vermute sowieso, wie Sie sagen, dass die Anwendung, die auf dem Upstream-Host ausgeführt wird, sich dessen bewusst sein und etwas unternehmen muss. – kenen