Re: Internal server error on PHP syntax error?
| From: | Jakov Sosic | Date: | Mon, 13 Feb 2012 17:08:17 +0000 |
| Subject: | Re: Internal server error on PHP syntax error? | ||
| References: | 1 2 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-57831@lists.php.net to get a copy of this message | ||
On 02/13/2012 05:55 PM, Ferenc Kovacs wrote:
It is implemented already, php will report HTTP 500 on fatal errors, except if the headers were already sent. And I also remember a php/xdebug bug, which caused the headers to be sent see http://bugs.xdebug.org/view.php?id=587 and https://bugs.php.net/bug.php?id=50921 Derick fixed it in 5.4 So I would suggest you to double-check that you aren't using xdebug when you experience the problem, and that you don't send out the headers before your code blows up.I know about xdebug bug, and xdebug is not even installed. I have same issue on CentOS v5 with original 5.1 RPMs, v5.2.17 from Atomic, v php53 5.3.3 from CentOS 5.7, and finally on Debian with php v5.2.6. I've tried this code: <?php ini_set('display_errors', 0); $x = y(); ?> and I get this in logs: IPADDR - - [13/Feb/2012:18:03:52 +0100] "GET /~username/test/ HTTP/1.1" 500 20 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:10.0.1) Gecko/20100101 Firefox/10.0.1" so, 500 headers are returned but internal server error page is not displayed. All I get is a blank page. So apache directive "ErrorDocument 500 /500.html" is useless in this case. -- Jakov Sosic www.srce.unizg.hr