在哪里可以找到 PHP 的错误日志文件?

2022-08-30 13:24:07

在哪里可以找到错误日志文件?

我需要检查它们以解决安装suPHP后显示的内部服务器错误。


答案 1

您可以使用 lsof 在系统上查找打开的日志文件。lsof只是给你一个所有打开的文件的列表。

使用 grep 进行“日志”...再次使用grep作为“php”(如果文件名包含字符串“log”和“php”,如“php_error_log”,并且您是root用户,您将在不知道配置的情况下找到文件)。

lsof | grep log

... snip
gmain     12148 12274       user   13r      REG              252,1    32768     661814 /home/user/.local/share/gvfs-metadata/home-11ab0393.log
gmain     12148 12274       user   21r      REG              252,1    32768     662622 /home/user/.local/share/gvfs-metadata/root-56222fe2.log
gvfs-udis 12246             user  mem       REG              252,1    55384     790567 /lib/x86_64-linux-gnu/libsystemd-login.so.0.7.1
==> apache 12333             user  mem       REG              252,1    55384     790367 /var/log/http/php_error_log**
        ... snip
lsof | grep log | grep php

**apache 12333             user  mem       REG              252,1    55384     790367 /var/log/http/php_error_log**
... snip

另请参阅有关查找打开的日志文件的文章:在 Linux 系统上查找打开的日志文件


答案 2

它对我有用。如何将所有PHP错误记录到日志文件中?

只需将以下行添加到文件 /etc/php.ini即可将错误记录到指定的文件 – 文件 /var/log/php-scripts.log

vi /etc/php.ini

修改 error_log 指令:

error_log = /var/log/php-scripts.log

确保display_errors设置为“关”(最终用户没有错误):

display_errors = Off

保存并关闭该文件。重新启动 Web 服务器:

/etc/init.d/httpd restart

如何将错误记录到系统日志或 Windows Server 事件日志?

修改error_log,如下所示:

error_log = syslog

如何查看日志?

使用 ssh 登录或使用 SFTP 下载日志文件 /var/log/php-scripts.log:

sudo tail -f /var/log/php-scripts.log

推荐