【问题标题】:How can I show the headers received by Rack, and how Rails sees them?如何显示 Rack 收到的标头,以及 Rails 如何查看它们?
【发布时间】:2016-01-16 14:21:18
【问题描述】:

我正在尝试调试 Rails 未显示正确 IP 的问题,我想知道如何显示 Rack 从 nginx 接收的标头,以及 Rails 在它们被所有人处理后如何查看它们机架中间件。在 Rails 4.2.x 应用程序的上下文中,有没有一种直接的方法可以做到这一点?

【问题讨论】:

标签: ruby-on-rails nginx rack


【解决方案1】:

您将可以使用request.headers

#controller action
request.headers.each do |header|
    header
end

【讨论】:

  • 这给了我我需要的所有信息,然后是一些。看起来 ActionDispatch::RemoteIp::GetIp 实例有一个带有“REMOTE_ADDR”=>“127.0.0.1”、“HTTP_X_FORWARDED_FOR”=>“”的 @env 哈希,并且 tails 仍在使用 127.0.0.1。但这是另一个问题。
  • 谢谢小伙伴,你有下一个问题的链接吗?
  • 我认为问题在于,trusted_proxies 除了我给它的正则表达式外,还有内部网络排除项。一旦投入生产,排除这些就可以了,所以我想我现在不会打那场战斗。
猜你喜欢
  • 2010-11-27
  • 2018-12-15
  • 1970-01-01
  • 1970-01-01
  • 2014-10-07
  • 2010-11-30
  • 1970-01-01
  • 2019-08-06
  • 2021-10-24
相关资源
最近更新 更多