PHP内置服务器错误日志位置

Bry*_*ito 16 php macos terminal tail

我不知道有没有?但是内置在Web服务器中的PHP也将其错误日志保存在文件中吗?用于拖尾目的,例如在apache中创建虚拟主机时.

更新:我正在使用mac osx

the*_*ude 21

默认情况下,内置的Web服务器不会记录任何地方,因此您需要提供一个php.ini来自定义它.例如,如果您使用以下内容创建了一个名为php.ini的文件:

error_log = /Users/me/test.log
log_errors = on
date.timezone = UTC
Run Code Online (Sandbox Code Playgroud)

然后你可以像这样启动PHP的内置网络服务器:

php -S 127.0.0.1:8080 -c php.ini
Run Code Online (Sandbox Code Playgroud)

并且error_log()调用将记录到您指定的文件中.

  • 另外,我在 php.ini 中尝试了错误日志的相对路径。当内置服务器使用 -t 目录标志时,路径是相对于那里的,而不是相对于 php.ini。 (2认同)

Pup*_*pil 8

是的,PHP内置了错误日志功能.

PHP会自动将错误记录到此文件中.

如果要记录错误,请使用函数error_log()

文件的位置根据环境而变化.

例如

在Ubuntu 12.04中,它的

var/log/php_errors.log

在XAMPP窗口中,

\xampp\php\logs\php_errors.log

在Mac OS中,

/var/log/apache2/php_errors.log

  • 您的回答忽略了 OP 想要将其用于 PHP 的*内置网络服务器*,您发布了各种 Apache 网络服务器的日志位置。 (4认同)
  • 问题是当网络服务器以“php -S localhost:8000”之类的内容启动时,错误日志在哪里 (3认同)
  • 投反对票的人,我们非常欢迎您投反对票。我很高兴我的答案需要改进/更正。但是,请对我的错误发表评论。你们是我真正的老师。 (2认同)