我在共享主机上,有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错误日志位于:
/ 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
在共享的cPanel环境中,如果你的主机提供商没有在cPanel仪表板中提供任何选项,你就无法找到错误日志。你可以搜索“错误”,看看你的提供商是否有任何错误。
否则,您通常会在public_html文件中找到一个名为“error_log”的文件,其中记录了所有PHP错误。
默认情况下,PHP似乎不会在任何地方记录错误。在我看到的所有安装中,php.ini中的error_log键都被注释掉了。
通常我:
寻找php.ini文件。找到php . ini。 在这些文件中搜索error_reporting值; 它应该被设置为PHP日志级别的任意组合。 例如:E_ALL & ~E_DEPRECATED & ~E_STRICT 检查error_log值,确保它指向一个实际的位置,没有被注释掉。 默认值没有给出完整的路径,只有一个文件名,我不知道这个路径通常解析到哪里。可能/var/log/.
对于PHP-FPM,只需搜索配置文件error_log:
cat /etc/php-fpm.d/www.conf | grep error_log
php_admin_value[error_log] = /var/log/php-fpm/www-error.log
因为某种原因,我把它存储在:
/ var / log / php-errors日志。
我使用的是Ubuntu Server 16.04 (Xenial Xerus)和PHP 7.1.28。