此问题已在此处有答案:
How do I get PHP errors to display?(27个回答)
上个月关门了。
我用PHP-FPM运行Nginx。我处理php文件的nginx配置看起来像这样:
location ~ \.php$ {
set $php_root /home/me/www;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $php_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
现在,我有一个像这样的简单的php文件:
<?php
ech "asd"
asd""
?>
是的,有一个明显的错误。当我尝试访问php文件时,而不是跟踪语法错误,我总是得到HTTP 500内部服务器错误。我尝试使用error_reporting(-1);
,但它总是返回HTTP 500。我如何让PHP打印确切的错误,而不是返回一个通用的HTTP 500?
8条答案
按热度按时间x4shl7ld1#
尝试在
php.ini
中查找以下行:然后让它
xoshrz7s2#
为了发布一个更完整的答案,我使用了一个生产版本的php.ini,它的display_errors = Off。而不是全局打开它,我现在做的是,对于我需要错误报告的文件,我在文件的开头使用
ini_set('display_errors', 'On');
。edqdpe6u3#
我也遇到了这个问题,我在
php.ini
中设置了display_errors = Off
,但它不工作。然后我在php-fpm.conf
中找到了php[display_errors]=off
,它将覆盖php.ini
的值,并且它可以工作。j9per5c44#
对于Ubuntu 12.10,在php-fpm-pool-config文件中:
在php.ini文件中:
368yc8dk5#
您可以通过这种方式显示错误:到php.ini找到
display_errors
,你应该看到display_errors = Off
,只需将Off
替换为On
,重新启动php并再次运行。zxlwwiss6#
显示错误只会影响是否将错误打印到输出。
如果打开了日志错误,则日志中仍然会缺少错误,除非关闭显示,这不是预期的行为。
预期的行为是,如果日志打开,则在那里发现错误。如果显示打开,则在屏幕/输出上发现错误。如果两个都是错误的,那么两个都是错误的。
目前的版本有一个错误,丧失了。
3gtaxfhh7#
如果你从Remi repo安装php72.它来默认用户和组与Apache|
转到您的www.conf文件,它定位/etc/opt/remi/php72/php-fpm.d/www.conf
和改变
在重新启动php fpm之前
CENTOS REMI PHP7.2
efzxgjgh8#
安装缺少的php模块对我很有效。
这解决了我的日志持久HTTP错误500我的PHP脚本.
因此,可以检查是否有任何应用程序可能需要正常工作的PHP模块丢失。