在机架中,ruby-on-rails,ruby,rubygems"/>

首页 > 解决方案 > #在机架中

问题描述

每当访问时localhost:3000,我都会看到此错误消息:

2020-02-15 11:31:36 -0800: Rack app error handling request { GET /favicon.ico }
#<NoMethodError: undefined method `reject' for nil:NilClass>
/Users/amirsharif/.rvm/gems/ruby-2.6.1/gems/rack-2.2.0/lib/rack/request.rb:623:in `reject_trusted_ip_addresses'
/Users/amirsharif/.rvm/gems/ruby-2.6.1/gems/rack-2.2.0/lib/rack/request.rb:363:in `ip'
/Users/amirsharif/.rvm/gems/ruby-2.6.1/gems/rack-mini-profiler-1.1.0/lib/mini_profiler/config.rb:27:in `block (2 levels) in default'
/Users/amirsharif/.rvm/gems/ruby-2.6.1/gems/rack-mini-profiler-1.1.0/lib/mini_profiler/profiler.rb:87:in `user'
/Users/amirsharif/.rvm/gems/ruby-2.6.1/gems/rack-mini-profiler-1.1.0/lib/mini_profiler/profiler.rb:343:in `call'
/Users/amirsharif/.rvm/gems/ruby-2.6.1/gems/webpacker-4.0.7/lib/webpacker/dev_server_proxy.rb:29:in `perform_request'
/Users/amirsharif/.rvm/gems/ruby-2.6.1/gems/rack-proxy-0.6.5/lib/rack/proxy.rb:57:in `call'
/Users/amirsharif/.rvm/gems/ruby-2.6.1/gems/railties-6.0.0/lib/rails/engine.rb:526:in `call'
/Users/amirsharif/.rvm/gems/ruby-2.6.1/gems/puma-4.3.1/lib/puma/configuration.rb:228:in `call'
/Users/amirsharif/.rvm/gems/ruby-2.6.1/gems/puma-4.3.1/lib/puma/server.rb:681:in `handle_request'
/Users/amirsharif/.rvm/gems/ruby-2.6.1/gems/puma-4.3.1/lib/puma/server.rb:472:in `process_client'
/Users/amirsharif/.rvm/gems/ruby-2.6.1/gems/puma-4.3.1/lib/puma/server.rb:328:in `block in run'
/Users/amirsharif/.rvm/gems/ruby-2.6.1/gems/puma-4.3.1/lib/puma/thread_pool.rb:134:in `block in spawn_thread'

标签: ruby-on-railsrubyrubygems

解决方案


可悲的是,我没有找出根本原因。

将机架更新到 2.2.2 后,这个问题就消失了,所以我现在已经畅通无阻了。

我相信问题的根源是在机架请求中的@env 中没有发送 HTTP_X_FORWARDED_FOR 标头。


推荐阅读