$ _SERVER ['SERVER_ADDR']可以安全依赖吗?

Fed*_*kun 4 php

我的网站非常依赖$_SERVER['SERVER_ADDR'].我可以信任检索到的数据吗?有可能找到一个空字符串?

Mar*_*ier 8

从php参考我引用了一些

它似乎取决于托管PHP的服务器(尤其是apache,IIS ...)

http://php.net/manual/en/reserved.variables.server.php

在Windows IIS 7上,您必须使用$ _SERVER ['LOCAL_ADDR']而不是$ _SERVER ['SERVER_ADDR']来获取服务器的IP地址.

而另一个.

运行IIS v6的Windows不包含$ _SERVER ['SERVER_ADDR']

如果您需要获取IP地址,请改用:

<?php $ipAddress =
 gethostbyname($_SERVER['SERVER_NAME']);
?>
Run Code Online (Sandbox Code Playgroud)

  • 警告:`gethostbyname`依赖于DNS查找 - 这可能会显着降低性能,具体取决于您的使用情况. (6认同)