Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php HTTP 500/配置错误?_Php_Apache_Lamp_System Administration - Fatal编程技术网

Php HTTP 500/配置错误?

Php HTTP 500/配置错误?,php,apache,lamp,system-administration,Php,Apache,Lamp,System Administration,我正在运行LinuxMint17.3的新安装,然后安装Apache、PHP(5.5.9)、MySQL和PHPMyAdmin。我做的另一件事是启用mod_重写 我遇到的问题是,当执行应该返回警告或致命错误的PHP代码时,它反而返回HTTP错误500。例如,以下代码工作正常(如预期): 你能检查你的apache错误日志吗,我确信他们会准确地告诉你错误是什么 您还可以检查apache配置中的错误报告,以确保错误设置为正确报告如果您能够检查apache错误日志,我相信他们会准确地告诉您错误是什么 您还可

我正在运行LinuxMint17.3的新安装,然后安装Apache、PHP(5.5.9)、MySQL和PHPMyAdmin。我做的另一件事是启用mod_重写

我遇到的问题是,当执行应该返回警告或致命错误的PHP代码时,它反而返回HTTP错误500。例如,以下代码工作正常(如预期):


你能检查你的apache错误日志吗,我确信他们会准确地告诉你错误是什么


您还可以检查apache配置中的错误报告,以确保错误设置为正确报告

如果您能够检查apache错误日志,我相信他们会准确地告诉您错误是什么


您还可以检查apache config/s中的错误报告,以确保错误被设置为正确报告。当然,正如评论所说,您将/应该在日志中找到错误,指出您在
*=
部分的代码中存在解析错误

原因如下

代码的
($temp-=32)
部分是正常的,因为值
80-32
被设置回
$temp
变量。 但是,
*=5/9
并没有设置回变量,而是设置回仅为标量值的
($temp-=32)
的结果,这就是出现错误的原因

只需在不使用
=
符号的情况下使用它即可
回显结果:

回声($temp-=32)*5/9


当然,正如评论所说,您将/应该在日志中发现错误,指出您在
*=
部分的代码中存在解析错误

原因如下

代码的
($temp-=32)
部分是正常的,因为值
80-32
被设置回
$temp
变量。 但是,
*=5/9
并没有设置回变量,而是设置回仅为标量值的
($temp-=32)
的结果,这就是出现错误的原因

只需在不使用
=
符号的情况下使用它即可
回显结果:

回声($temp-=32)*5/9


您可能会发现您收到了警告/错误,但它不会显示,因为您已将错误通知设置为不在屏幕上显示。检查您的apache/错误日志,或查看如何显示PHP警告和错误。@Lee即使更改了
/etc/php5/apache2/PHP.ini
error\u reporting=E\u ALL
(显示所有错误、警告和通知),它仍然会给我一个HTTP 500错误。它始终会给出一个500错误,因为这是正在发生的错误。你查过日志了吗?这有帮助吗?如果在php脚本中ini_设置display_错误并记录_错误,则解析错误会在之前发生,因此不会设置它们。尝试将设置放入apache配置中。您可能会发现收到警告/错误,但不会显示,因为您已将错误通知设置为不在屏幕上显示。检查您的apache/错误日志,或查看如何显示PHP警告和错误。@Lee即使更改了
/etc/php5/apache2/PHP.ini
error\u reporting=E\u ALL
(显示所有错误、警告和通知),它仍然会给我一个HTTP 500错误。它始终会给出一个500错误,因为这是正在发生的错误。你查过日志了吗?这有帮助吗?如果在php脚本中ini_设置display_错误并记录_错误,则解析错误会在之前发生,因此不会设置它们。尝试将设置放入apache配置中。从技术上讲,这应该是一个注释而不是答案。@Lee:由于repo,他不能评论。。从技术上讲,这应该是一个注释而不是答案。@Lee:由于repo,他不能评论。。我不是在问如何修复PHP错误。@mistermartin我的错。那么请检查我的评论。我不是在问如何修复PHP错误。@mistermartin我的错。那就看看我的评论吧。
<?php
// convert fahrenheit to celsius
$temp = 80;
$temp -= 32;
$temp *= 5/9;
echo $temp;
<?php
// convert fahrenheit to celsius
$temp = 80;
echo ($temp -= 32) *= 5/9;