【发布时间】:2017-05-11 11:15:27
【问题描述】:
为什么 gethostbyaddr($_SERVER['REMOTE_ADDR']) 返回一个 IP 地址,而不是它应该返回的计算机名称。它在办公室的 50 台计算机上按预期工作并返回计算机名称。目前它在我自己的计算机上返回一个 IP 地址,而它应该返回一个计算机名称。
有没有快速解决办法?
【问题讨论】:
标签: php
为什么 gethostbyaddr($_SERVER['REMOTE_ADDR']) 返回一个 IP 地址,而不是它应该返回的计算机名称。它在办公室的 50 台计算机上按预期工作并返回计算机名称。目前它在我自己的计算机上返回一个 IP 地址,而它应该返回一个计算机名称。
有没有快速解决办法?
【问题讨论】:
标签: php
来自文档:
gethostbyaddr — 获取与给定 IP 地址对应的 Internet 主机名
重要的部分是Internet,PHP 所做的是DNS 查找。在您的办公室,您的路由器可能会为本地计算机进行 DNS 解析,但您的家庭未在任何 DNS 上注册。
根据您的需要,您可以使用:How can I read the client's machine/computer name from the browser?
但这并不是一件容易的事。
【讨论】:
现在,正如最初的问题指出的那样,上面的违规机器在我们公司的 Intranet 环境中运行。现在解决这个问题的方法是公司的 IT 必须重新加入违规机器,在这种情况下,我的工作计算机到域,然后运行组策略。这为我在同一个 Intranet 上的两台不同机器上修复了它。这种情况不会经常发生,但我们的 IT 过去一直在为解决方案感到困惑。上述操作将 IP 恢复为所需的机器名称。
【讨论】: