【发布时间】:2015-03-02 23:28:07
【问题描述】:
当我使用windows命令'ping'时,我可以只ping IP地址并得到结果;即使只有 IP 地址 xxx.xxx.xxx。无需端口即可工作。我正在 ping 一个只有 HTTPS 和非标准端口的 IP,但 'ping 仍然有效。
在尝试了几个版本的 GET_HEADERS 和 fsockopen 之后,我仍然无法从 PHP ping 中获得成功的返回。
我需要的是能够在不知道端口或 HTTP 协议的情况下 ping 一个 IP 地址并确定服务器是否已启动。
任何建议将不胜感激。
谢谢
【问题讨论】:
-
您是否有权访问 exec?
-
Ping 与 HTTP 甚至 TCP 无关。它是特殊协议 (ICMP) 的一部分。
socket_create()有一些信息可以做到这一点(在 cmets 中甚至还有一些示例ping()代码)。 -
成功的“ping”并不能真正告诉您服务器是否“启动”。取决于你的定义。如果您想检查 abc.com 是否可供我浏览,ping 不是一个好的选择
-
我打算使用 'ping' 函数来确定 IP 地址是否存在,如果存在,我可以使用 curl 函数来确定服务器上的服务类型。
标签: php networking curl