Port in Ngnix verbergen und stattdessen Site-Link anzeigen

Port in Ngnix verbergen und stattdessen Site-Link anzeigen

Ich habe die hier genannten Vorschläge bereits ausprobiert:

Port in der Nginx-Reverse-Proxy-Umleitung ausblenden

aber es hilft mir nicht.

Ich habe einen Nginx-Reverse-Proxy für meine Django+Gunicorn-Anwendung eingerichtet und dieser ist auf Port 8000 geöffnet. Ich kann auf einen Computernamen zugreifen alshttp://irgendeine_Maschine:8000um zu sehen, wie meine App läuft. Ich habe den auf dieser Maschine laufenden lokalen Host mit dem Maschinennamen über den Nginx-Reverse-Proxy zugeordnet. Ich möchte den Port verbergen und in der URL etwas wiehttp://some_machine/zmkanstatthttp://irgendeine_Maschine:8000/zmk.

Ich schreibe den folgenden Inhalt in meinen /etc/nginx/conf.dOrdner:

upstream zms {    
  ip_hash;    
  server zms:8000;    
}

# portal

server {    
  location /zmk {    
        proxy_pass http://zms/;    
        # proxy_redirect http://some-machine:8000/ http://some-machine/zmk;    
        port_in_redirect off;    
        # autoindex on;            
        proxy_set_header Host $host:$server_port;    
        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 $scheme;    
    }
  listen 8000;    
  server_name localhost    
  server_name_in_redirect off;    
}

Ich verstehe nicht, was ich falsch mache. Ich habe auch versucht, den obigen Inhalt in /etc/nginx/site-availableeinen Ordner zu kopieren.

Antwort1

Ändern Sie stattdessen Ihre listenAnweisung in listen 80. Auf diese Weise lauscht Ihr Nginx-Server auf Port 80 und leitet den Datenverkehr an Port 8000 weiter.

verwandte Informationen