Ruby on rails 4 如何在rails应用程序中获取系统环境变量

Ruby on rails 4 如何在rails应用程序中获取系统环境变量,ruby-on-rails-4,Ruby On Rails 4,我的rails应用程序运行在3台服务器上,即[testing.example.com、staging.example.com、example.com],每当发送电子邮件时,我都会在production.rb中将主机选项设置为“liverserver\u url”。我需要获取系统环境变量来动态设置主机选项。如何做到这一点。如何在rails应用程序中获取系统环境变量。您可以从下一个变量获取环境 环境[RAILS_ENV] 环境[RAKE_ENV] Rails.env 但您必须配置服务器以使用prod

我的rails应用程序运行在3台服务器上,即[testing.example.com、staging.example.com、example.com],每当发送电子邮件时,我都会在production.rb中将主机选项设置为“liverserver\u url”。我需要获取系统环境变量来动态设置主机选项。如何做到这一点。如何在rails应用程序中获取系统环境变量。

您可以从下一个变量获取环境 环境[RAILS_ENV] 环境[RAKE_ENV] Rails.env

但您必须配置服务器以使用production.rb staging.rb和配置目录中的另一个环境文件,然后配置特定的环境

export MAIL_HOST='your_url'
将以下行添加到/etc/environment文件


您可以在rails应用程序的任何位置访问ENV['MAIL\u HOST'.

我应该在3台服务器的生产模式下运行。我将在每台服务器中分别设置系统环境变量,如export-MAIL\u-HOST='testing.example.com',export-MAIL\u-HOST='staging.example.com',export-MAIL\u-HOST='example.com'。那么,如何在我的rails应用程序中获取这个环境变量,以便我可以将这个变量设置为将动态获取的默认\u url\u选项。@在ruby代码中,您可以使用ENV['MAIL\u HOST'],我通过以下步骤修复了它。导出控制台中添加在/etc/environment下一行的MAIL_HOST='example.com'并重新启动机器MAIL_HOST='example.com'我可以在rails应用程序中获取ENV['MAIL_HOST']
MAIL_HOST='your_url' and restart the machine.