繁体   English   中英

从ssh实时输出使用php运行

[英]Having real time output from ssh run with php

我试图用php编写本质上是一个交互式ssh系统,我需要让php在带有ssh_exec或shell的远程服务器上执行命令,并实时收集命令的输出。

我一直在困扰着输出缓冲和flush(),直到脸色发青,即将使命令将其输出重定向到文件,并有一个单独的脚本用sftp轮询该文件的内容并使用jquery更新页面上的输出div。

就在我走这条漫长的路线之前,没有人有使用单个脚本工作的解决方案吗?

谢谢!

没有哪个事情可以通过单个脚本可靠地工作:您对服务器端的缓冲几乎没有控制权-flush flush()可能会或可能无法按预期工作,这取决于您是否使用mod_phpCGIFCGI或其他任何方式,并且您绝对无法控制客户端的缓冲(IE在这里臭名昭著)。

到那里,用AJAX完成它。

像下面这样的东西行不通吗?

$output = shell_exec($theScript);
file_put_contents($someFile, $output, FILE_APPEND);

还是我错了根?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM