我想在php页面上输出日志文件,包括即将发布的内容。
像这样,但是php不允许。
header('Content-Type: text/plain;');
flush();
exec('docker logs server --follow', 'php://output'); // Follow log output
长时间长时间执行输出命令的最佳实践是什么?
答案 0 :(得分:0)
我不知道它是否可以工作,但是我会尝试这样的事情:
// Turn off output buffering
ini_set('output_buffering', 'off');
// Turn off PHP output compression
ini_set('zlib.output_compression', false);
// Implicitly flush the buffer(s)
ini_set('implicit_flush', true);
ob_implicit_flush(true);
// Clear, and turn off output buffering
while (ob_get_level() > 0) ob_end_clean();
system('docker logs server --follow');
system
直接将输出发送到缓冲区,并且ob_implicit_flush
将在发送输出时进行刷新。您可能需要打开gzip和其他东西。
我曾经为服务器日志做过一次-tail
,但是那是几年前的事,所以我不记得自己是怎么做的。它在iFrame中,因此我可以将其显示在网页上。我记得那个。