Django FEHLER (EXTERNAL IP): Ungültiger HTTP_HOST-Header: '* .domain.com'

8

Ich habe eine Django (1.7) -Webanwendung mit einem Nginx-, Gunicorn-, Django-Stack erstellt und vor kurzem habe ich eine Reihe von Fehlern bekommen:

  

[Django] FEHLER (EXTERNAL IP): Ungültiger HTTP_HOST-Header: '* .domain.com'. Der angegebene Domänenname ist nicht gemäß RFC 1034/1035 gültig.

Nachdem ich mich umgeschaut habe, habe ich mehrere Antworten gefunden, die vorschlagen, den Platzhalter als zulässige Hosts zu setzen, d. h.

%Vor%

Allerdings bekomme ich immer noch diesen Fehler.

Hier ist die vollständige Fehlermeldung:

%Vor%

Soll ich etwas besorgt sein? Fehle ich hier etwas? Ich dachte, indem ich den Platzhalter in den zugelassenen Wirten einsetzte, würde ich dieses Problem beseitigen, aber das scheint nicht der Fall zu sein.

Jede Hilfe wäre sehr willkommen.

    
tdsymonds 13.10.2015, 08:27
quelle

2 Antworten

2

Der Client, der eine Anfrage an Ihren Server sendet, hat den folgenden HTTP Host Header gesendet:

%Vor%

Dies ist gemäß der HTTP-Spezifikation ungültig - * ist in der Kopfzeile nicht erlaubt - daher antwortet Django mit einer HTTP 400-Antwort und protokolliert den Fehler.

Dies hängt nicht mit der Einstellung ALLOWED_HOSTS zusammen, in der * zulässig ist, und teilt Django mit, dass er Anfragen nach einem (gültigen) Hostnamen akzeptiert (ungültige Hostnamen wie *.domain.com werden abgelehnt).

Wie andere jedoch in den Kommentaren erwähnt haben, sollten Sie nginx wirklich so konfigurieren, dass nur Verbindungen für bestimmte Hosts ( server_name ) akzeptiert werden, damit solche Anfragen nicht einmal Django erreichen.

    
solarissmoke 17.04.2016 04:43
quelle
2

PROBLEM : gunicorn (Ihr Django App-Server) erhält einen ungültigen Hostnamen.

  

wenn eine Anfrage an den Server (NginX) und den HTTP Host (oder   user agent) ist leer, nginx setzt den HTTP-Host auf die Gunicorn-Socke.

Lösung : Fügen Sie eine Direktive in Ihrem nginx conf ( nginx.conf oder sites-enabled/<your-site>.conf ) hinzu oder aktualisieren Sie sie von:

%Vor%

zu (wenn Sie es nicht festgelegt haben, fügen Sie einfach Folgendes hinzu),

%Vor%

Kann es in die location oberhalb der proxy_pass -Direktive einfügen:

%Vor%     
Nabeel Ahmed 23.02.2018 10:18
quelle

Tags und Links