如何使用nginx和Unicorn托管多个Rails应用程序?

Tim*_*nen 11 nginx unicorn ruby-on-rails-3

如何使用nginx和Unicorn托管多个Rails应用程序?

由于" 部署到VPS ",我目前有一个站点启动并运行.

我已经搜索过,但我需要一步一步的指导才能实现这一目标.我发现的结果并没有得到很好的解释,以帮助我理解如何实现这一目标.

小智 14

基本上,你做了同样的事情,让你的第一个应用程序运行的所有内容减去Nginx的安装.因此,无论您在第一个应用程序运行时获得了Unicorn实例,请再次为您的下一个应用程序执行此操作.

然后,您可以将另一个服务器块添加到Nginx配置中,其中一个上游指向新的Unicorn实例.

运行整个机器的一个Nginx可以正常运行,每个应用程序运行一个Unicorn.

希望这会有所帮助.


以下是为Nginx添加服务其他应用程序所需的附加服务器块示例:

upstream unicorn_app_x {
  server unix:/path/to/unicorn/socket/or/http/url/here/unicorn.sock;
}

server {
  listen 127.0.0.1:80;
  server_name mysitehere.com aliasfor.mysitehere.com;
  root /path/to/rails/app/public;

    location / {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_redirect off;

    if (!-f $request_filename) {
      proxy_pass http://unicorn_app_x;
      break;
    }
  }
}
Run Code Online (Sandbox Code Playgroud)