我不知道 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 用作它们之间所有通信的通道的“文件”。你在哪里定义的?在我们的独角兽配置中,我们通常有这样一行:
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。第二个实际上将请求路由到抽象位置“@unicorns”,而该位置又在上一节中定义。这样,如果您有更复杂的 nginx 路由,您可以重复使用 @unicorns 简写。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)