我正在使用wamp,需要知道为什么我会在所有浏览器中显示服务器错误消息。 (见抢)。我已经在php.ini中关闭了错误显示,并且无法在httpd.conf文件中看到任何显示这些内容的文件。关于如何解决这个问题,我将不胜感激。如果有人需要更多的代码或信息,我很乐意提供小提琴。
我使用的是php5.3.5和apache 2.0.53。
由于
答案 0 :(得分:2)
您确定代码中的某些函数未在运行时设置display_errors
吗? ini_set
可用于在运行时设置该值,如此PHP文档示例所示:
<?php
echo ini_get('display_errors');
if (!ini_get('display_errors')) {
ini_set('display_errors', 1);
}
echo ini_get('display_errors');
?>
答案 1 :(得分:2)
display_errors
可更改PHP_INI_ALL
(documentation)。
这意味着可以使用.htaccess
在ini_set()
或正在运行的脚本中启用它。检查.htaccess文件;请注意,服务器(在默认配置中)也会检查父目录中的.htaccess文件 - 因此,如果您的站点位于/var/www/example.com/htdocs
中,请检查此路径中每个目录中的.htaccess
。
答案 2 :(得分:1)
我在php.ini
中关闭了错误显示
您是否检查过您更改/检查过的php.ini文件是否是PHP正在使用的文件? (由phpinfo()显示)
更改php.ini文件后是否重新启动了网络服务器?
抓住什么?如果上述问题无法解决您的问题,请提供错误消息的文本。答案 3 :(得分:1)
看起来你正在使用zend框架。如果您不想显示错误消息。 (无论如何关闭错误都无法修复它们)
选项1。 改变应用环境。 编辑你的bootstrap文件(在公共目录中) 找到以下行
defined('APPLICATION_ENV')
|| define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'development'));
以下
defined('APPLICATION_ENV')
|| define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));
选项2。 编辑application.ini(在application / configs目录下)文件。将所有phpSettings.display_errors = 1更改为phpSettings.display_errors = 0.
无论如何,我建议使用选项2。
但请记住关闭错误不会解决问题。如果你发布你的代码可能是我们可以帮助。
答案 4 :(得分:1)
来自OP的评论:
在php信息文件中,display_errors显示为on。在php.ini文件中,它被禁用:; display_errors = On。为什么会发生这种情况。我检查了多个ini文件,但只能看到1.
如果php.ini
中的选项已注释,则表示未禁用:表示“使用默认值”。 IIRC,此处的默认值为On
。将行display_errors = Off
添加到php.ini。