2014-04-18 4 views
10

Ich weiß, dass meine Frage sehr dumm sein muss, weil ich nichts darüber finden kann, sogar im Stapelüberlauf, aber es ist wirklich ein Problem für mich .In django + nginx + wsgi, was ist ein "mysite.sock"

Ich folgte this doc, und fast alles ging gut, bis "mysite.sock" aufgetreten ist. Es kam wie folgt aus:

server unix:///path/to/your/mysite/mysite.sock; # for a file socket 
# server 127.0.0.1:8001; # for a web port socket (we'll use this first) 

Dieses Dokument nicht erwähnt nichts über die „mysite.sock“, nach eintägiger Suche, fand ich nichts, und meine django Website brauchen Online innerhalb von 48 Stunden zu gehen, so dass ich muss um Hilfe bitten.

Antwort

5

Ich bin kein Experte in diesem Bereich, aber ich habe Django mit uWSGI auf Nginx mit dieser Methode eingesetzt. Eine Socket-Datei repräsentiert einen Unix-Socket. In diesem Fall erstellt uWSGI es und über diesen Socket werden uWSGI und Nginx miteinander kommunizieren.

Der "Concept" der Link zur Verfügung gestellt Sie spricht darüber:

uwsgi ist eine WSGI Implementierung. In diesem Tutorial werden wir uWSGI so einrichten, dass es einen Unix-Socket erstellt und Antworten auf das Web Server über das WSGI-Protokoll bereitstellt. Am Ende, unsere kompletten Stapel Komponenten werden wie folgt aussehen:

die Webclient < -> der Webserver < -> die Buchse < -> uwsgi < -> Django

Der erste Teil des Tutorials spricht über die Verwendung von TCP-Port-Socket, um das gleiche Ergebnis zu erzielen. Wenn Sie diese Schritte bereits ausgeführt haben, sollten Sie den Unix-Socket-Teil überspringen. Es erwähnt jedoch auch, dass Unix sockets are better due to less overhead.

+0

Ich weiß nicht, was ich in der mysite.sock schreiben soll. Weißt du, wie es aussieht? – shellbye

+1

uWSGI erstellt die Socket-Datei beim Start, sodass Sie sich keine Gedanken über das Erstellen oder Bearbeiten der Socket-Datei machen müssen. Stellen Sie nur sicher, dass uWSGI und Nginx Lese- und Schreibrechte innerhalb des Verzeichnisses haben. – naiquevin

+0

Vielen Dank für Ihre Hilfe. Ich werde es dir sagen, wenn ich es gemacht habe! – shellbye