在CakePHP上获取外部(非私有)IP地址的防错方法?

时间:2009-06-13 23:44:58

标签: php cakephp

CakePHP附带的getClientIP( )方法有时会返回私有IP。例如127.0.0.1或192.x.x.x等IP。我认为这是由代理引起的。

查看getClientIP( )代码,它确实似乎试图处理代理问题,但它并没有真正检查IP是否是私有的。

获取真实的非私有IP地址的最佳方式是什么?

感谢。

1 个答案:

答案 0 :(得分:2)

尝试拨打getClientIp(false)。如果这不起作用,您可以直接使用$_SERVER["REMOTE_ADDR"]。它将始终包含实际连接到服务器的外部IP。与用于代理的http标头不同,此地址无法操作。