4

我知道 PHP 日志文件位于/var/log/nginx/error.log我的个人邮箱中,但我有兴趣务实地找出错误日志文件的位置。

我努力了:

 ini_get('error_log');

但是我的 php ini 没有指定 error_log,所以它是空白的。而且由于 apache/ngnix 每个存储不同的地方,有没有办法找出错误写入的位置?我不介意使用exec()运行命令来获取它,但是

php -i | grep error_log

退货

error_log => no value => no value

对于我的设置

4

2 回答 2

1

要查找命令行 PHP 的错误日志文件,请使用:

php -i | grep error_log 

要查找 Web 服务器的错误日志文件 - 使用内置函数:

phpinfo();

请记住:

错误日志 字符串

应记录脚本错误的文件的名称。该文件应该可由 Web 服务器的用户写入。如果使用特殊值 syslog,则会将错误发送到系统记录器。在 Unix 上,这意味着 syslog(3),而在 Windows NT 上,这意味着事件日志。Windows 95 不支持系统记录器。另请参阅:syslog()。如果未设置此指令,则会将错误发送到 SAPI 错误记录器。例如,它是 Apache 中的错误日志或 CLI 中的 stderr。另请参阅 error_log()。

所以当你得到error_log => no value => no value它意味着将使用 Apache / ngnix 的日志 - 就像在你的配置中一样。

您可以在此处找到有关error_log php.ini设置的更多信息

于 2015-05-25T08:13:52.773 回答
0

你需要phpinfo()

不幸的是,它输出而不是返回您需要的信息-但是在该页面上,很多人给出了输出输出的示例

于 2014-01-19T07:57:00.767 回答