加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – 将Sinatra应用程序部署到登台环境的问题

发布时间:2020-12-17 02:18:12 所属栏目:百科 来源:网络整理
导读:我有一个小的Sinatra应用程序,在运行Nginx的单个服务器上同时具有登台和生产环境.部署我使用Capistrano和capistrano-ext轻松部署到不同的位置. 登台环境始终使用app.rb文件中指定的生产配置运行的问题. configure :staging do # staging settings set :foo,"
我有一个小的Sinatra应用程序,在运行Nginx的单个服务器上同时具有登台和生产环境.部署我使用Capistrano和capistrano-ext轻松部署到不同的位置.

登台环境始终使用app.rb文件中指定的生产配置运行的问题.

configure :staging do
  # staging settings
  set :foo,"bar"   # will never be set to this
end

configure :production do
  # prod settings
  set :foo,"rab"
end

我得出结论,deploy.rb文件中的capistrano:environment变量不会以任何方式配置Sinatra.我也试过将ENV [“RACK_ENV”]设置为“staging”无济于事.

配置/部署/ staging.rb

server "10.10.100.16",:app,:web,:db,:primary => true
set :deploy_to,"/var/www/staging.my_app" 
set :environment,"staging"
set :env,"staging"          
ENV["RACK_ENV"] = "staging"

有任何想法吗?

**更新:我应该补充一点,我也在使用Passenger.

解决方法

在nginx中设置rack_env变量似乎可以解决问题.

http://www.modrails.com/documentation/Users%20guide%20Nginx.html#RackEnv

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读