首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有关ruby on rails上的折射gem的初始化错误。

有关ruby on rails上的折射gem的初始化错误。
EN

Stack Overflow用户
提问于 2013-12-18 17:43:10
回答 1查看 147关注 0票数 0

我的refraction.rb文件在初始化器中

代码语言:javascript
复制
Refraction.configure do |request|
  if request.host !~ /^www./
    request.permanent! host: "www.#{request.host}" 
  end
end

配置下的我的Environment.rb文件

代码语言:javascript
复制
# Load the rails application.
Rails::Initializer.run do |config|
  config.middleware.insert_before(::Rack::Lock, ::Refraction, {})
end

require File.expand_path('../application', __FILE__)

# Initialize the rails application.

我的错误

代码语言:javascript
复制
uninitialized constant Rails (NameError)
  /var/www/vhosts/wiyo.hk/httpdocs/config/environment.rb:2:in `<top (required)>'
  config.ru:3:in `require'
  config.ru:3:in `block in <main>'
  /usr/local/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/builder.rb:55:in `instance_eval'
  /usr/local/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/builder.rb:55:in `initialize'
  config.ru:1:in `new'
  config.ru:1:in `<main>'
  /usr/local/lib/ruby/gems/2.0.0/gems/passenger-4.0.25/helper-scripts/rack-preloader.rb:105:in `eval'
  /usr/local/lib/ruby/gems/2.0.0/gems/passenger-4.0.25/helper-scripts/rack-preloader.rb:105:in `preload_app'
  /usr/local/lib/ruby/gems/2.0.0/gems/passenger-4.0.25/helper-scripts/rack-preloader.rb:150:in `<module:App>'
  /usr/local/lib/ruby/gems/2.0.0/gems/passenger-4.0.25/helper-scripts/rack-preloader.rb:29:in `<module:PhusionPassenger>'
  /usr/local/lib/ruby/gems/2.0.0/gems/passenger-4.0.25/helper-scripts/rack-preloader.rb:28:in `<main>'

我只是想在实际的网站加载之前做一些重定向的事情。我在上一个问题上了解了折射宝石。我被卡住了。请帮帮我。

EN

回答 1

Stack Overflow用户

发布于 2019-01-11 01:46:55

如果你想这样解决,你需要首先要求应用程序,然后运行初始化器。

但在这种情况下,解决方案可能是将这一行放入application.rb中,因为时间流逝,Rack::Lock被删除。请改用Rack::Runtime

代码语言:javascript
复制
config.middleware.insert_before(::Rack::Runtime, ::Refraction)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20654518

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档