Maison > Article > développement back-end > Comment le journal des erreurs PHP enregistre l'emplacement du fichier
Comment localiser le fichier journal des erreurs PHP : 1. Lors du chargement du module, le code est [Configuration dans le programme php>httpd.conf>Configuration dans php.ini] 2. Via le mode [CGI/ fastCGI] ; , le code est [ini_get("error_log")].
Comment localiser le fichier journal des erreurs PHP :
Déterminez le serveur Web (IIS, APACHE, NGINX etc.) Pour prendre en charge PHP, il existe généralement les deux manières suivantes
2. Via le chargement du module
php程序中配置 > httpd.conf > php.ini中配置
3. Via CGI / mode fastCGI
php程序中配置 > php.ini中配置 ini_get("error_reporting"); ini_get("log_errors"); ini_get("error_log");
Sortie :
'22527' '1' '/usr/local/php7.2.0/var/log/php_errors.log' 如果log_errors = On
/usr/local/php7.2.0/var/log/php_errors.log
Le fichier n'existe pas, ou ne peut pas être créé ou écrit, alors le journal des erreurs php est écrit dans le fichier spécifié par la directive Apache ErrorLog
[liuchao@GD-NT-0911QAR1CF_vm1-19.32 conf.d]$ sudo ps -ef |grep httpd apache 670 2501 0 11:24 ? 00:00:00 /usr/local/httpd-2.4.20/bin/httpd -k graceful [liuchao@GD-NT-0911QAR1CF_vm1-19.32 conf.d]$ cd /usr/local/httpd-2.4.20/conf/conf.d [liuchao@GD-NT-0911QAR1CF_vm1-19.32 conf.d]$ sudo grep -anR --color '1.aspire-he-admin' ./ ./aspire_he_admin.conf:29: ServerName 1.aspire-he-admin [liuchao@GD-NT-0911QAR1CF_vm1-19.32 conf.d]$ sudo vim +29 /usr/local/httpd-2.4.20/conf/conf.d/aspire_he_admin.conf
<VirtualHost *:80> DocumentRoot "/home/d139/var/aspire-he-admin/webroot/" ServerName 1.aspire-he-admin SetEnv SERVER_ENVERONMENT_PARAM 2 DirectoryIndex index.php index.html php_value post_max_size 100M CustomLog "| /usr/sbin/cronolog /home/d139/logs/%Y-%m-%d-%H-he-admin_access.log" combined ErrorLog "| /usr/sbin/cronolog /home/d139/logs/%Y-%m-%d-%H-he-admin_error.log" </VirtualHost>
[liuchao@GD-NT-0911QAR1CF_vm1-19.32 module]$ sudo tail -f /home/d139/logs/2019-03-13-10-he-admin_error.log [Wed Mar 13 10:02:01.194757 2019] [php7:error] [pid 17673] [client 127.0.0.1:50312] PHP Fatal error: Uncaught Error: Call to undefined method VersionManage:: getDb1() in /home/d139/var/aspire-he-admin/module/VersionManage.class.php:82\nStack trace:\n#0 /home/d139/var/aspire-he-admin/webroot/api.php(37): VersionManage::getTxlVersionUpgradeStatus(Array)\n#1 {main}\n thrown in /home/d139/var/aspire-he-admin/module/VersionManage.class.php on line 82
S'il y a log_errors= On
dans php.ini, selon la déclaration officielle, alors le fichier error_log
doit être spécifié. S'il n'est pas spécifié ou si le fichier spécifié n'a pas l'autorisation d'écrire, il sera toujours émis sur le canal de sortie normal, ce qui signifie display_errors
Le paramètre Off spécifié n'est pas valide et le message d'erreur est toujours imprimé. Changez simplement log_errors = Off
.
Recommandations d'apprentissage associées : programmation php (vidéo)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!