【发布时间】:2016-05-27 06:26:38
【问题描述】:
我有一个简单的 PHP 脚本设置来检查我的服务器的状态。它使用标准的 ping 命令,通过 exec() 运行。
- 在 Windows 上,脚本在服务器在线和 下来时。
- 在 Linux 上,脚本在服务器在线时工作,但在服务器在线时挂起 服务器已关闭。超时似乎对后者没有影响。
通过控制台使用相同的命令进行 Ping 可以正常工作并正确超时。
是什么原因,如何解决?
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
$exec_string = 'ping -n 1 -i 255 -w 2 ' . $host;
} else {
$exec_string = 'ping -n -c 1 -t 255 -w 2 ' . $host;
}
exec($exec_string, $output, $return);
【问题讨论】:
标签: php linux exec ping freeze