【发布时间】:2014-06-18 10:27:07
【问题描述】:
我最近才开始使用 CloudFlare,但仍然有一个挥之不去的问题,即获取 CloudFlare 的代理 IP 地址而不是我的访问者的地址。 CloudFlare 对此有很多solutions,但我还没有看到任何关于 Rails 的。
我使用的是 Rails 3.2.17。
看起来如果我初始化 ActionDispatch::RemoteIp 并将 custom_proxies 参数设置为包含所有 CloudFlare's IP ranges(以及所有标准本地和私有范围)的正确正则表达式,它可能会解决我的问题。
问题:
1) 这是正确的方法吗?
CloudFlare 有大量的 IP 范围,都需要转换为正则表达式。这些范围在未来可能会发生变化,尽管 CloudFlare 说它们不会经常发生变化,而且我可能不知道,所以它看起来有点脆弱。
2) 如何使用 custom_proxies 参数初始化 ActionDispatch::RemoteIP?
【问题讨论】:
标签: ruby-on-rails heroku ip cloudflare