运行 Ubuntu 12.10 x64、Nginx、Unicorn、Rails 4
bundle exec rake routes
正确显示所有路由,但是当我访问任何路由(控制器/操作)时,它会超时(nginx 504)。当我打开任何静态 HTML 文件(公共目录)时,它工作正常。
尝试重新启动服务器、nginx、独角兽,安装了所有的 gem。我还缺少什么?
这是我的独角兽日志 http://pastebin.com/5BHzqCA9
运行 Ubuntu 12.10 x64、Nginx、Unicorn、Rails 4
bundle exec rake routes
正确显示所有路由,但是当我访问任何路由(控制器/操作)时,它会超时(nginx 504)。当我打开任何静态 HTML 文件(公共目录)时,它工作正常。
尝试重新启动服务器、nginx、独角兽,安装了所有的 gem。我还缺少什么?
这是我的独角兽日志 http://pastebin.com/5BHzqCA9
您必须将套接字文件添加到unicorn.rb配置文件并将其设置为侦听器。像这样的东西:
sock_file = "path/to/unicorn.sock"
......
listen sock_file
在您的 nginx conf 中,您需要:
upstream rails_server {
server unix:/path/to/sock;
}
server {
listen 80;
server_name example.com;
root /path/to/public;
access_log /path/to/log/nginx_access.log;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /path/to/public;
}
try_files $uri, @rails;
location @rails {
proxy_pass http://rails_server;
proxy_set_header X-Forwarder-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
}
}