我正在尝试使用php编写本质上是一个交互式ssh系统,我需要在具有ssh_exec或shell的远程服务器上执行php执行命令,并实时收集命令的输出。
我已经搞砸了输出缓冲和flush(),直到我脸红了,我准备让命令将其输出重定向到文件,并有一个单独的脚本用sftp轮询这个文件的内容使用jquery更新页面上的输出div。
在我走这条漫长的路线之前,有没有人有一个使用单一脚本的解决方案?
谢谢!
答案 0 :(得分:2)
使用单个脚本无法可靠地工作:您无法控制服务器端的缓冲 - flush()
可能会或可能不会按预期工作,具体取决于您使用的{{1} },mod_php
,CGI
或其他什么,你完全无法控制客户端的缓冲(IE在这里臭名昭着)。
去过那里,做到了,用AJAX做到了。
答案 1 :(得分:0)
以下情况会不起作用?
$output = shell_exec($theScript);
file_put_contents($someFile, $output, FILE_APPEND);
或者我得到了错误的结束?