2013-05-09 10 views
6

Ich habe gerade auf einem Amazon EC2 Bitnami Djnago-Stack bereitgestellt und ich habe Probleme mit der Einstellung ALLOWED_HOSTS in der Datei settings.py. Ich bin mir nicht sicher, welchen Hostnamen ich verwenden soll oder wo ich ihn finde. Ich habe versucht, interne IP, externe IP, localhost, Domain-Name. Das einzige, was die 500 Fehlerseiten stoppt, ist:Erlaubte Host-Einstellung für Django auf EC2

ALLOWED_HOSTS = ['*'] 

Aber das ist ein Sicherheitsproblem. Was vermisse ich?

+1

Setzen Sie es auf '['.yourdomain.com']'. Wo ist "yourdomain.com" der Domainname, mit dem Sie darauf zugreifen? –

+0

das hat es geschafft! Vielen Dank. ich hatte ['www.domain.com'] vorher versucht und das hat nicht funktioniert. Warum vermasselt das www? – bcoop713

Antwort

12

Set es -

ALLOWED_HOSTS = [ 
    '.yourdomain.com' 
] 

Wo yourdomain.com der Domain-Name für den Zugriff Sie verwenden ist.

Die documentation sagt -

Werte in dieser Liste können voll qualifizierte Namen (zB 'www.example.com'), in welchem ​​Fall sie gegen die genau Host-Header der Anforderung angepasst werden (Groß- und Kleinschreibung, ohne Port). Ein Wert, der mit einem Punkt beginnt, kann als Subdomain-Wildcard verwendet werden: '.example.com' passt zu example.com, www.example.com und jeder anderen Subdomain von example.com.

Wenn Sie es auf www.yourdomain.com gesetzt, es muss eine Anforderung an einen anderen Sub-Domain, die nicht www gewesen. Was den Ärger verursacht hat. Ich kann das nicht genau sagen, weil ich nicht so viele Informationen habe.