PHP获取客户端ip方法

PHP获取客户端ip方法

本文俺将跟大家介绍,如何用PHP获取用户客户端ip。

服务端开发中一个重要核心就是: 确保不能完全信任从客户端发送过来的数据 ,因为可能存在伪造的情况。

$_SERVER[‘REMOTE_ADDR’]包含了连接方的真实IP地址。

但是,它们可能位于代理服务器的后面,在这种情况下,代理可能设置了$_SERVER[‘HTTP_X_FORWARDED_FOR’],但是这个值很容易被欺骗。

例如,它可以由没有代理的人设置,或者IP可以是来自代理后面的局域网的内部IP。

这意味着,如果您要保存$_SERVER[‘HTTP_X_FORWARDED_FOR’],请确保您也保存了$_SERVER[‘REMOTE_ADDR’]值。例如,在数据库中的用两个字段来保存这两个值。

如果要将IP作为字符串保存到数据库中,请确保至少有45个字符的空间。IPv6将继续存在,这些地址比旧的IPv4地址更大。

(请注意,IPv6通常最多使用39个字符,但IPv4地址也有一个特殊的IPv6符号,其完整形式最多可达45个字符。所以如果你知道你在做什么,你可以使用39个字符,但如果你只是想设置然后忘记它,使用45)。

(0)
上一篇 2020年10月16日 下午6:48
下一篇 2020年10月19日 上午10:16

相关推荐

发表回复

登录后才能评论