jrd*_*oko 12 client ruby-on-rails ip-address request actioncontroller
在ActionController源中,本地请求定义如下:
def local_request? #:doc:
request.remote_addr == LOCALHOST && request.remote_ip == LOCALHOST
end
Run Code Online (Sandbox Code Playgroud)
在我的应用程序中,如果请求来自特定的IP范围,我想使用不同的逻辑.request.remote_addr和之间有什么区别request.remote_ip,我应该使用哪一个?
似乎是按原样remote_addr返回REMOTE_ADDR环境变量的值,同时remote_ip也会根据变量HTTP_X_FORWARDED_FOR和HTTP_CLIENT_IP变量的存在来调整它,例如您通过代理转发客户端时可能会有的变量.
这种双重检查local_request?只是确定用户来自本地计算机的一种方式,而不是简单地从其他地方通过本地代理转发.
| 归档时间: |
|
| 查看次数: |
4694 次 |
| 最近记录: |