我在共享主机上,有cPanel, Apache, PHP是由FastCGI运行的。PHP在哪里存储错误日志?
是否有其他方法可以在共享主机环境中找到错误日志,而不必通过整个站点结构来查找error_log文件?
我可以访问PHP .ini文件(我使用PHP 5.2.16版本)。
我在共享主机上,有cPanel, Apache, PHP是由FastCGI运行的。PHP在哪里存储错误日志?
是否有其他方法可以在共享主机环境中找到错误日志,而不必通过整个站点结构来查找error_log文件?
我可以访问PHP .ini文件(我使用PHP 5.2.16版本)。
当前回答
在php.ini文件中设置error_log变量时应使用绝对路径,否则错误日志将根据相对路径存储。
error_log = /var/log/php.errors
其他解决方案是编写简单的脚本,从目录树中列出所有错误日志文件。
其他回答
在共享的cPanel环境中,如果你的主机提供商没有在cPanel仪表板中提供任何选项,你就无法找到错误日志。你可以搜索“错误”,看看你的提供商是否有任何错误。
否则,您通常会在public_html文件中找到一个名为“error_log”的文件,其中记录了所有PHP错误。
最好的方法是查看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"覆盖它。
NGINX通常将其存储在/var/log/nginx/error.log或access.log(在Ubuntu上)。
php --info | grep error
这很有帮助。
如何找到你的PHP错误日志在Linux:
sudo updatedb
[sudo] password for eric:
sudo locate error_log
/var/log/httpd/error_log
另一种等效的方法:
sudo find / -name "error_log" 2>/dev/null
/var/log/httpd/error_log