我们正在为我们的rails 3.0x应用程序运行带有Nginx Phusion Passenger的ubuntu服务器.
我在测试机器上的/ etc / environment中设置了一个环境变量:
MC_TEST=true
如果我运行一个控制台(捆绑exec rails c)并输出ENV [“MC_TEST”],我看到’true’.
但是,如果我在页面上放置相同的代码(<%= ENV [“MC_TEST”]%>)它看不到任何内容.那个变量不存在.
这引出了我的问题:
1 – 使用Nginx(不是apache SetEnv)将环境变量引入乘客的正确方法是什么?
2 – 为什么乘客没有适当的环境?
最佳答案
Passenger fusion v4可以直接从bashrc文件中读取环境变量.确保bashrc存在于执行乘客进程的用户的主文件夹中(在我的例子中,它是ubuntu,用于ec2 linux和Nginx)
这是documentation,详细介绍了bashrc