PHP不显示错误-内部服务器错误(500)怎么办?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (396)

我已经使用* Apache2 / MySQL / PHP5在亚马逊AWS上安装了Ubuntu Server 12.04 LTS的全新安装。当我运行PHP脚本并遇到错误时,我看不到任何来自PHP的错误报告,我所看到的只是

HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfil the request.

我检查了我的/etc/php5/apache2/php.ini文件,并且据我所知可以设置错误报告。该文件的内容(关于错误)是:

;    display_errors
;      Default Value: On
;      Development Value: On
;      Production Value: Off

;    display_startup_errors
;      Default Value: Off
;      Development Value: On
;      Production Value: Off

;    error_reporting
;      Default Value: E_ALL & ~E_NOTICE
;      Development Value: E_ALL | E_STRICT
;      Production Value: E_ALL & ~E_DEPRECATED

任何人都可以建议吗?如果我尝试这样的事情$obj = new ObjectDoesntExist;不会告诉我,Fatal error: Class 'ObjectDoesntExist'它会给我一个服务器500错误。

有任何建议吗?

提问于
用户回答回答于

你粘贴的php.ini代码段在每行中都有一个分号(;字符)。分号是php.ini中注释的开始,因此不使用分号后面的所有内容。尝试手动将display_errors设置为on并将error_reporting设置为E_ALL,或者删除合适的分号以解决此问题。

此外,检查你的Apache的错误日志,PHP可能会记录它的错误。

用户回答回答于

请使用sudo gedit /etc/php5/apache2/php.ini和生产值编辑php.ini文件,或者也可以使用ini_set('display_errors','1'); 在你的PHP文件的顶部

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励