2013-06-22 15 views
12

Nie wiem, co jest nie tak z plikiem unicorn.rb. moja konfiguracja unicorn.rb toNie można uruchomić jednorożca, master nie może się uruchomić, sprawdź dziennik stderr, aby uzyskać szczegółowe informacje

APP_PATH = "/var/www/demo" 
working_directory APP_PATH 

stderr_path APP_PATH + "/log/unicorn.stderr.log" 
stdout_path APP_PATH + "/log/unicorn.stderr.log" 

pid APP_PATH + "/tmp/pid/unicorn.pid" 

z systemem nginx z powodzeniem.

sudo servier nginx start 
sudo unicorn -c /var/www/demo/config/unicorn.rb -D 
+1

co oznacza dziennik stderr w /var/www/demo/log/unicorn.stderr.log? BTW, logujesz się stdout i stderr do tego samego pliku. –

+0

Brak takiego pliku lub katalogu - /path/to/.unicorn.sock (Errno :: ENOENT) –

Odpowiedz

6

Gniazdo to "plik" używany przez nginxa i jednorożca jako kanał do komunikacji między nimi. Gdzie to zdefiniowałeś? W naszych Unicorn configs, zwykle mamy linię tak:

listen APP_PATH + "/tmp/pid/.unicorn.sock 

Następnie w nginx.conf, trzeba powiedzieć o tym nginx gniazda, np

upstream unicorn { 
    server unix:/var/www/demo/tmp/pid/.unicorn.sock fail_timeout=0; 
} 

location/{ 
    root /var/www/demo/current/public ; 
    try_files $uri @unicorns; 
} 

location @unicorns { 
    proxy_pass http://unicorn; 
} 

w tym pliku konfiguracyjnym , pierwsza sekcja określa, w jaki sposób nginx może dotrzeć do jednorożca. Drugi w rzeczywistości kieruje żądania do abstrakcyjnej lokalizacji "@netorns", która z kolei jest zdefiniowana w ostatniej sekcji. W ten sposób możesz ponownie użyć skrótu @unicorns, jeśli masz bardziej złożone routing nginx.

Powiązane problemy