Unicorn.rbファイルの何が問題なのかわかりません。私のUnicorn.rb設定は
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"
nginxの実行に成功しました。
Sudo servier nginx start
Sudo Unicorn -c /var/www/demo/config/Unicorn.rb -D
ソケットは、nginxとUnicornがそれらの間のすべての通信のチャネルとして使用する「ファイル」です。どこで定義しましたか? Unicornの設定では、通常、次のような行があります。
listen APP_PATH + "/tmp/pid/.Unicorn.sock
次に、nginx.confで、このソケットについてnginxに通知する必要があります。例:
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;
}
この構成ファイルの最初のセクションでは、nginxがUnicornに到達する方法を定義しています。 2つ目は、実際にはリクエストを抽象的な場所 "@unicorns"にルーティングします。これは、前のセクションで定義されています。この方法では、より複雑なnginxルーティングが行われている場合に@unicorns省略表現を再利用できます。