Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 使用Rack::SslEnforcer初始化时发生ArgumentError_Ruby On Rails_Ruby On Rails 3_Rack - Fatal编程技术网

Ruby on rails 使用Rack::SslEnforcer初始化时发生ArgumentError

Ruby on rails 使用Rack::SslEnforcer初始化时发生ArgumentError,ruby-on-rails,ruby-on-rails-3,rack,Ruby On Rails,Ruby On Rails 3,Rack,尝试使用rack ssl enforcer时出现参数错误。 错误来自初始化!调用environment.rb 我正在使用的版本是 在application.rb中: module MyApp class Application < Rails::Application config.middleware.use Rack::SslEnforcer, :except => ["/login", "/logout", /^\/static\//, "/"] end en

尝试使用rack ssl enforcer时出现参数错误。 错误来自初始化!调用environment.rb

我正在使用的版本是

在application.rb中:

module MyApp
  class Application < Rails::Application

    config.middleware.use Rack::SslEnforcer, :except => ["/login", "/logout", /^\/static\//, "/"]
  end
end

我能想到的唯一一件事是,如果没有paren,它不能作为函数调用正确地进行计算。尝试:

module MyApp
  class Application < Rails::Application

    config.middleware.use(Rack::SslEnforcer, :except => ["/login", "/logout", /^\/static\//, "/"])
  end
end
模块MyApp
类应用程序[“/login”、“/logout”、/^\/static\/,“/”)
结束
结束

看来机会不大。语法看起来有效,并且遵循SslEnforced自述文件中的示例,我无法想象为什么它会给你这个错误,除了对参数吹毛求疵和以某种方式误解选项散列。

这是因为你的正则表达式没有包装在
%r{}

您是否将其放在了environment或application.rb中?它放在了application.rb中。。更新了问题。谢谢谢谢-但是我在启动服务器时仍然收到错误。您是否检查了您安装的“rack”gem的版本?您的Rack::Middleware API似乎与预期不同。
module MyApp
  class Application < Rails::Application

    config.middleware.use(Rack::SslEnforcer, :except => ["/login", "/logout", /^\/static\//, "/"])
  end
end