Ho nginx configurato per proxy del traffico https su un server http in esecuzione sulla stessa macchina.Nginx proxy https su http su porta non standard?
Tutto funziona correttamente quando configuro nginx per l'ascolto su/proxy dalla porta https 443. Ma voglio davvero ascoltare su una porta non standard. Quando configuro una porta non standard, nginx riceve la richiesta e la invia al mio server http, come dovrebbe, ma il server risponde con un reindirizzamento HTTP al browser che gli dice di reindirizzare a 'https: // server. com/someurl. "Voglio dire che l'url di reindirizzamento sembra buono, tranne che manca la porta corretta. Mi manca un'intestazione HTTP che ho bisogno di essere impostato nel proxy?
In particolare sto eseguendo un'istanza http di Tracce .; http://getontracks.org Se è importante
mio (lavorando sulla porta standard) configurazione del server nginx:
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;
}
Grazie. Ho trovato alcuni post sul forum che suggeriscono di impostare un'intestazione HTTP X-Forwarded-Port anche se sembra un'intestazione "non standard" non standard. Ho provato a impostarlo nella configurazione di nginx senza fortuna. Suppongo comunque, come dici tu, che l'applicazione in esecuzione sull'host upstream debba essere consapevole e agire su qualcosa di simile. – kenen