如何为dev / prod,相同的rails应用程序设置passenger / nginx?

时间:2012-02-27 12:24:27

标签: ruby-on-rails nginx passenger

我需要以一种方式设置nginx,我可以在开发模式中使用相同的rails应用程序。

例如,当我访问http://mysite时,它应该以生产模式运行,当我访问http://dev.mysitehttp://mysite:3000时,它应该以开发模式运行。

我尝试了很多配置,但它们没有用。这两个网址总是把我带到同一个环境。

server {
listen 80;
server_name mysite;
root /srv/www/mysite/public;   # <--- be sure to point to 'public'!
passenger_enabled on;
passenger_user mysite;
rails_env production;
}

server {
listen 3000;
server_name mysite;
root /srv/www/mysite/public;   # <--- be sure to point to 'public'!
passenger_enabled on;
passenger_user mysite;
rails_env development;
}

1 个答案:

答案 0 :(得分:0)

似乎不可能在不同的环境中同时使用这两个网址。

解决方案是使用与所需环境相对应的URL,然后当您想要切换环境时,重新启动应用程序并使用其他URL

$ touch tmp/restart.txt