Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/65.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 rails远程ip中间件中的一个奇怪错误_Ruby On Rails - Fatal编程技术网

Ruby on rails rails远程ip中间件中的一个奇怪错误

Ruby on rails rails远程ip中间件中的一个奇怪错误,ruby-on-rails,Ruby On Rails,以下是我在rails生产环境中发现的错误: IP spoofing attack?!HTTP_CLIENT_IP="10.127.166.241"HTTP_X_FORWARDED_FOR="10.127.166.241, 61.164.36.180" actionpack (3.2.11) lib/action_dispatch/middleware/remote_ip.rb:55:in `calculate_ip' 因此,我深入研究了rails源代码,查看了calculate\u ip,在本

以下是我在rails生产环境中发现的错误:

IP spoofing attack?!HTTP_CLIENT_IP="10.127.166.241"HTTP_X_FORWARDED_FOR="10.127.166.241, 61.164.36.180"
actionpack (3.2.11) lib/action_dispatch/middleware/remote_ip.rb:55:in `calculate_ip'
因此,我深入研究了rails源代码,查看了
calculate\u ip
,在本地对其进行了测试,发现它不应该发生,下面是测试代码:

forwarded_ips = "10.127.166.241, 61.164.36.180".strip.split(/[,\s]+/).reverse
client_ips ="10.127.166.241".strip.split(/[,\s]+/).reverse
!forwarded_ips.include?(client_ips.last) # return false?
根据我阅读源代码后的理解,计算ip应该返回
61.164.36.180
错误实例,有人知道为什么吗?谢谢~