【发布时间】:2017-01-24 21:21:53
【问题描述】:
我正在运行全新安装的 Linux Mint 17.3,并按照this guide 设置 Apache、PHP (5.5.9)、MySQL 和 PHPMyAdmin。我唯一做的另一件事是启用 mod_rewrite。
我遇到的问题是在执行应该返回警告或致命错误的 PHP 代码时,它反而返回 HTTP 错误 500。例如,以下代码可以正常工作(如预期):
<?php
// convert fahrenheit to celsius
$temp = 80;
$temp -= 32;
$temp *= 5/9;
echo $temp;
虽然我希望以下代码返回 PHP 警告/错误,但它反而返回完全无用的 HTTP 错误 500:
<?php
// convert fahrenheit to celsius
$temp = 80;
echo ($temp -= 32) *= 5/9;
发生了什么,我该如何解决这个问题?
【问题讨论】:
-
您可能会发现您收到警告/错误,但由于您将错误通知设置为不显示在屏幕上,因此没有显示。检查您的 apache / 错误日志,或查看如何显示 PHP 警告和错误。
-
@Lee 即使更改了
/etc/php5/apache2/php.ini值error_reporting = E_ALL(显示所有错误、警告和通知),它仍然给我一个 HTTP 500 错误。 -
它总是会给出 500 错误,因为这是正在发生的错误。你检查过你的日志吗?
-
如果你在你的php脚本中ini_set了display_errors和logs_errors,解析错误之前发生过,所以没有设置。尝试将设置放入 apache 配置中。
标签: php apache lamp system-administration