Ruby on rails 3 使用nginx+;独角兽
我想使用nginx+unicorn托管多个rails应用程序,目前正在使用apache+passenger和railsbaseuri提供服务。唯一的原因是apache需要在每个新应用程序部署后重新加载。我想知道是否可以在unicorn+nginx中添加新的应用程序,而无需重新加载服务器 我想在host name/nginx-app1、host name/nginx-app2等子文件夹上部署应用程序,而host name指向一个基本的html页面 阅读一些与使用套接字处理单个应用程序相关的内容,并寻求一些帮助来实现这一点。在我的例子中,应用程序只部署一次,没有进一步的迭代。一旦我部署了新的应用程序,就应该没有停机时间来运行当前的应用程序 编辑 应用程序中的config/unicorn.rb文件Ruby on rails 3 使用nginx+;独角兽,ruby-on-rails-3,nginx,ubuntu-12.04,unicorn,Ruby On Rails 3,Nginx,Ubuntu 12.04,Unicorn,我想使用nginx+unicorn托管多个rails应用程序,目前正在使用apache+passenger和railsbaseuri提供服务。唯一的原因是apache需要在每个新应用程序部署后重新加载。我想知道是否可以在unicorn+nginx中添加新的应用程序,而无需重新加载服务器 我想在host name/nginx-app1、host name/nginx-app2等子文件夹上部署应用程序,而host name指向一个基本的html页面 阅读一些与使用套接字处理单个应用程序相关的内容,并
working_directory "/home/ubuntu/application_1"
pid "/home/ubuntu/application_1/pids/unicorn.pid"
stderr_path "/home/ubuntu/application_1/log/unicorn.log"
stdout_path "/home/ubuntu/application_1/log/unicorn.log"
listen "/tmp/unicorn.todo.sock"
worker_processes 2
timeout 30
一种方法是将rails应用程序作为UDS托管。和nginx,以便从每个UDS(Unix域套接字)读取多个服务器块。编写语法错误的逻辑特赦 e、 g.看看这个。
您可以使用unicorn的app1.conf托管app1,它将有一个行
listen '/var/run/app1.sock', :backlog => 512
并且有多个nginx上游,如
upstream app1 {
server unix:/var/run/app1.sock fail_timeout=0;
}
upstream app2 {
server unix:/var/run/app2.sock fail_timeout=0;
}
....
并基于位置或主机头路由来自服务器块的请求(proxypass)
server {
listen 80;
location /app1 {
proxy_pass http://app1;
proxy_redirect off;
}
location /app2 {
proxy_pass http://app2;
proxy_redirect off;
}
}
unicorn的app1.conf的位置将是什么。请检查我的编辑,其中我已使用unicorn.rb文件更新。所以正如你所说,我需要为每个应用程序提供单独的.conf文件。多个nginx上游代码是否会进入nginx.conf或default.conf?。