2014-04-18 10 views
10

Sorunun çok aptal olması gerektiğini biliyorum, çünkü yığın taşmasında bile bunun hakkında hiçbir şey bulamıyorum, ama gerçekten benim için bir sorun .django + nginx + wsgi içinde, "mysite.sock" nedir

this doc'u izledim ve hemen hemen her şey "mysite.sock" oluşuncaya kadar iyi gitti. Şöyle oluştu:

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) 

Bu doküman bir günlük arama yaptıktan sonra hiçbir şey bulunamadı ve benim django sitesi 48 saat içinde çevrimiçi olmak lazım "mysite.sock" bahsetti, bu yüzden vermedi yardım istemek zorunda.

cevap

5

Bu alanda uzman değilim, ancak bu yöntemle Nginx üzerinde uWSGI kullanarak Django'yu konuşlandırdım. Bir soket dosyası bir Unix soketini temsil eder. Bu durumda, uWSGI onu oluşturur ve uWSGI ve Nginx'in birbirleriyle konuşacağı bu soketten geçer.

uWSGI WSGI uygulamasıdır:

bağlantının " Concept" bölümü bu konuda görüşmelere sağladı. Bu derste, bir Unix soketi oluşturacak ve WSGI protokolü aracılığıyla web sunucusuna yanıt veren uWSGI 'u kuracağız. Sonunda, bileşenlerin bizim tam yığını aşağıdaki gibi görünecektir:

web istemcisi < -> Web sunucusu < -> soket < -> uwsgi < -> Django

ilk bölümü öğretici aynı sonucu elde etmek için TCP bağlantı noktası soketi kullanma hakkında konuşuyor. Bu adımları izlediyseniz Unix soket bölümünü atlamanız gerekir. Bununla birlikte, aynı zamanda Unix sockets are better due to less overhead.

+0

Mysite.sock'ta ne yazmalıyım bilmiyorum. Neye benzediğini biliyor musun? – shellbye

+1

uWSGI, başladığında soket dosyasını oluşturacaktır, böylece oluşturma veya düzenleme hakkında endişelenmeniz gerekmez. Sadece uWSGI ve Nginx'in dizin içinde okuma ve yazma izinlerinin olduğundan emin olun. – naiquevin

+0

Yardımlarınız için teşekkür ederiz. Yaptığımda sana anlatacağım! – shellbye