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

是否有其他方法可以在共享主机环境中找到错误日志,而不必通过整个站点结构来查找error_log文件?

我可以访问PHP .ini文件(我使用PHP 5.2.16版本)。


当前回答

您处于共享环境中,无法找到错误日志。总是检查你的cPanel仪表板是否有错误选项。如果您无法找到错误日志,那么您可以在那里找到它。

在cPanel搜索栏中,搜索Error,它将显示Error Pages,这基本上是不同HTTP错误页面的列表,其他Error是错误日志显示的地方。

共享环境中的其他地方:

/ home / yourusername / logs / home / yourusername / public_html error_log

其他回答

无论你想要它在哪里,如果你在函数调用中设置它:

error_log($errorMessageforLog . "\n", 4, 'somePath/SomeFileName.som');

就像这样:

sudo locate error.log | xargs -IX grep -iH "errorlog" X

or

sudo locate error_log | xargs -IX grep -iH "errorlog" X

or

sudo find / -iname "error?log" 2>/dev/null | xargs -IX grep -iH "errorlog" X

对于CentOS 8,它是var/log/httpd/error_log。

最好的方法是查看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 / <-作为“其他”或“额外”。你的虚拟主机可以用ErrorLog "/path/to/error_log"覆盖它。

如果你使用php5-fpm默认日志,它应该在下面:

/var/log/php5-fpm.log