我创造了新环境" staging"。在当地它的工作原理。我这样运行:
RAILS_ENV=staging passenger start
在服务器上我使用Nginx +乘客。在虚拟主机设置中,我写道:
server {
listen 443;
server_name test.myapp.com;
rails_env staging;
root /home/admin/myapp/current/public; # <-- be sure to point to 'public'
passenger_enabled on;
ssl on;
ssl_certificate /home/admin/ssl/server.crt;
ssl_certificate_key /home/admin/ssl/server.key;
}
server {
listen 80;
server_name test.myapp.com;
root /home/admin/myapp/current/public;
rewrite ^ https://$server_name$request_uri? permanent;
}
但是应用程序仍然在生产中运行。它加载生产数据库,而不是分段。重新加载Nginx并没有帮助。有什么问题?
答案 0 :(得分:4)
我认为您错过了rails_env
设置。
server {
...
rails_env staging;
}
答案 1 :(得分:0)
用户的.bashrc或.zshrc是否包含RAILS_ENV设置?如果是这样,它可能会覆盖NGINX设置。