【问题标题】:No Errors in PHP even with display_errors = On in php.ini即使在 php.ini 中使用 display_errors = On,PHP 也没有错误
【发布时间】:2017-08-25 18:42:07
【问题描述】:

我正在 Vagrant(Ubuntu 16.04、Apache2、PHP7)中设置 LAMP 堆栈,而 PHP 没有显示任何错误。我有以下应该返回错误的文件:

This is a PHP File
<?php thisisnotafunction(); ?>
<?php echo date("ThisIsAnInvalidArgument"); ?>

其他 Stack Overflow 帖子(post 1post 2post 3)指出我需要更改 php.ini 文件以显示错误。

运行$ sudo find / -name php.ini 返回:

/etc/php/7.0/apache2/php.ini
/etc/php/7.0/cgi/php.ini
/etc/php/7.0/cli/php.ini

我进入每一个并设置display_errors = On,重新启动apache2,但仍然没有错误。但是,将以下内容添加到我的 index.php 文件确实会显示错误:

<?php
    error_reporting( E_ALL );
    ini_set( "display_errors", 1 );
    require_once( "sample.php" );
?>

index.php 现在返回:

This is a PHP File 
Warning: require_once(sample.php): failed to open stream: No such file or directory in /var/www/html/index.php on line 6

Fatal error: require_once(): Failed opening required 'sample.php' (include_path='.:/usr/share/php') in /var/www/html/index.php on line 6

很明显,我的 PHP 设置知道如何处理错误。

【问题讨论】:

  • Apache 指令可以设置或取消设置此标志,ini 可能不是您安装使用的那个(也不必称为 php.ini,php7 可以读取 inis 的目录等)等)

标签: php apache2 ubuntu-16.04 php-7


【解决方案1】:

使用php --ini 命令将显示您使用配置文件。

【讨论】:

  • 这确认了 PHP 使用的是哪个 ini 文件。谢谢。此外,对于其他正在寻找答案的人,事实证明 display_errors 在 php.ini 中出现 三次(通常两次,一次作为评论)。
猜你喜欢
  • 2015-04-12
  • 2015-10-15
  • 2020-04-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-20
  • 2016-12-15
  • 1970-01-01
相关资源
最近更新 更多