PHP在哪里存储错误日志?(php 5,apache,fastcgi,cPanel)

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (10)
  • 关注 (0)
  • 查看 (520)

我在共享主机,有CPanel,Apache,PHP是由Quickcgi运行的。PHP在哪里存储错误日志?

我使用了 cPanel 、Apache 和基于 FastCGI 运行的 PHP 的虚拟主机。PHP 的错误日志存放在哪?

是否有其他方法可以在虚拟主机环境中找到错误日志,而不需要遍历整个站点结构来查找错误日志文件?

我可以进入php.ini(我正在使用PHP版本5.2.16)。

提问于
用户回答回答于

如果php是apache2模块,PHP将错误日志存储在/var/log/apache2

虚拟主机经常将日志文件存储在根目录中的/log子文件夹中。

如果你可以访问php.ini文件,您可以这样做来指定路径:

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

根据rinogo的注释:如果使用cPanel,您可能要查找的主日志文件(默认情况下)存储在

/usr/local/apache/logs/error_log

如果所有其他操作都失败,则可以使用以下方法检查日志文件的位置:

<?php phpinfo(); ?>
用户回答回答于

最好的方法是查看 httpd.conf 文件并确认默认值。它也可能被特定的虚拟主机覆盖。

我首先会看/etc/httpd/conf/httpd.conf/etc/apache2/httpd.conf寻找error_log。它可以列出为/var/log/httpd/error_log或/var/log/apache2/error_log但它也可能被列为logs/error_log...

在这种情况下,它是一个相对路径,这意味着它将在/etc/httpd/logs/error_log.

如果仍然找不到它,请检查httpd.conf文件的底部,看看虚拟主机在哪里。它可能在/etc/httpd/conf.d/<--作为“other”或“extra”。您的虚拟主机可以重写它,然后使用ErrorLog "/path/to/error_log".

用户回答回答于

如果您已经从源代码构建了Apache和PHP,那么默认情况下错误日志将在${Apache install dir}/logs/error_log一般/usr/local/apache2/logs/error_log.

否则,如果您从系统仓库中安装了它,您将在/var/log/apache2/error_log.

你可以在你的php.ini并通过调用phpinfo()查询

用户回答回答于

设置时应在php.ini文件中使用绝对路径设置error_log变量,否则,错误日志将根据您的相对路径存储。

error_log = /var/log/php.errors

其他解决方案是编写简单的脚本,其中列出目录树中的所有错误日志文件。

用户回答回答于

如果你使用 google ,也可能是/var/log/apache2/error.log

你可以使用 tail 来查看:

tail -f /var/log/apache2/error.log
用户回答回答于

在默认情况下,php看起来是没有记录错误在任何地方,error_log我所看到的所有安装中,php.ini中的键都被注释掉了。

一般来说:

  1. 找php.ini文件。locate php.ini...
  2. 在这些文件中搜索error_reporting价值;

对于您来说,应该将它设置为PHP的任何日志级别的。

例:E_ALL & ~E_DEPRECATED & ~E_STRICT

  1. 检查error_log值,以确保它指向实际的位置,并且不被注释掉。

默认值不会给出完整的路径,只有一个文件名,我不知道这个路径通常解析到哪里。可能/var/log/...

用户回答回答于

如何在Linux上找到PHP错误日志:

eric@dev /var $ sudo updatedb
[sudo] password for eric:
eric@dev /var $ sudo locate error_log

/var/log/httpd/error_log

另一种类似的方式:

eric@dev /home/eric $ sudo find / -name "error_log" 2>/dev/null

/var/log/httpd/error_log
用户回答回答于

linux

php --info | grep error 

终端将输出错误日志位置。

Windows

php --info | findstr /r /c:"error_log"

命令提示符将输出错误日志位置。

若要设置日志位置,请执行以下操作

打开你的php.ini并添加以下一行:

error_log = /log/myCustomLog.log
用户回答回答于

在LAMP环境中,php 错误默认指向以下文件。

/var/log/httpd/error_log

所有访问日志都在下面:

/var/log/httpd/access_log
用户回答回答于

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励