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

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

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


当前回答

在命令行中输入cat <file location> | grep ErrorLog在httpd.conf文件中查找ErrorLog。例如:

cat /etc/apache2/httpd.conf | grep ErrorLog

输出:

# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
ErrorLog "/private/var/log/apache2/error_log"

找到以ErrorLog开头的行,这就是答案。

注意:对于虚拟主机,您可以编辑虚拟主机文件httpd-vhosts.conf以指定不同的日志文件位置。

其他回答

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

如果您在谷歌计算引擎中,也可以是/var/log/apache2/error.log。

你可以这样看尾巴:

tail -f /var/log/apache2/error.log

在php.ini中配置错误日志文件时,可以使用绝对路径或相对路径。相对路径将基于生成脚本的位置进行解析,并且您将在拥有脚本的每个目录中获得一个日志文件。如果希望所有错误消息都保存在同一个文件中,请使用该文件的绝对路径。

请参阅错误处理函数。

cPanel错误日志位于:

/ usr / local / cpanel / logs / / usr / local / apache / logs /

默认情况下,Apache日志位于:

/var/log/apache

or

/var/log/apache2

如果有人正在使用自定义日志位置,那么你可以通过运行这个命令来检查它:

cat /etc/apache2/**conf**/httpd.conf | grep ErrorLog

如果你得到一个apache2目录不存在的错误,你可以运行这个命令来找到正确的位置:

whereis apache

or

whereis apache2

NGINX通常将其存储在/var/log/nginx/error.log或access.log(在Ubuntu上)。