首页 > 解决方案 > Apache 中的 Shell Exec 将输出发送到错误日志

问题描述

我需要从 Apache 网络服务器中运行的 php 脚本运行脚本。我已经尝试了 exec 和 shell_exec ,两次脚本都运行得很好,但是输出进入错误日志(就像在做 error_log($output) 一样)。

所以我的问题是如何捕获变量中的输出而不将其发送到错误日志?

标签: phpapache

解决方案


因为shell_exec不抓stderr,只抓stdout

您必须2>&1在命令末尾添加管道stderrstdout,然后两者都将出现在 from 的返回字符串中shell_exec

如果要单独捕获文件描述符stderrstdout可以使用.proc_open


推荐阅读