【问题标题】:Ubuntu PHP5/Apache2 - Displaying 500 error instead of error messageUbuntu PHP5/Apache2 - 显示 500 错误而不是错误消息
【发布时间】:2011-07-12 11:00:06
【问题描述】:

以下脚本没有向浏览器输出错误消息。相反,它会导致 HTTP 错误 500 响应。

<?php
error_reporting(E_ALL);
ini_set('display_errors', 'On');

phpinfo();

echo "test" asdf // This should error
?>

想法?这是 ubuntu 上的基本 php5/apache2 安装。 httpd.conf 为空白,没有 .htaccess 文件。

error.log 文件显示错误信息:

语法错误,意外的 T_STRING,需要 ',' 或 ';'

这是正确的。

【问题讨论】:

  • 这是否会给您带来更多错误ini_set(‘display_startup_errors’, ‘On’);?
  • 删除error.log文件并再次运行。我怀疑您的 php 安装不起作用.....如果是,则将重新生成 error.log 文件。您的 httpd.conf 文件为空白的事实也可能是一个问题
  • 你发现了吗?我现在有同样的问题,任何和所有 PHP 错误都会导致 500 内部服务器错误。

标签: php http apache2 httpd.conf


【解决方案1】:
<?php
error_reporting(-1);
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);

phpinfo();

echo "test" asdf // This should error
?>

在error_reporting -1 中显示的内容甚至比E_ALL 还要多,对于display_errors,我使用值1 而不是On。

http://php.net/manual/en/function.error-reporting.php http://www.php.net/manual/en/errorfunc.configuration.php#ini.display-errors

编辑:我得到了答案!

如果脚本存在阻止其运行的解析错误,这也会阻止它 > 更改 PHP 设置。

https://serverfault.com/questions/242662/ubuntu-php5-apache2-displaying-500-error-instead-of-error-message

【讨论】:

  • 我仍然得到相同的结果。
  • 如果脚本没有运行,则 php.ini 更改不会被提交...见编辑
  • 好的,我现在明白了......看起来解决方案是通过ini文件打开错误然后。谢谢!
猜你喜欢
  • 2021-08-29
  • 1970-01-01
  • 2016-05-08
  • 1970-01-01
  • 2012-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多