Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.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 启动异常时的Zend Db表显示Db用户和密码。如何阻止它?_Php_Zend Framework - Fatal编程技术网

Php 启动异常时的Zend Db表显示Db用户和密码。如何阻止它?

Php 启动异常时的Zend Db表显示Db用户和密码。如何阻止它?,php,zend-framework,Php,Zend Framework,我使用Zend_Db_表来管理我的MySQL连接。 它们工作得很好,但只有一个巨大的安全问题 如果出现错误,如MySQL关闭,ZF将抛出数据库连接用户名和密码异常 例如,我在配置中设置了错误的db密码。 这是抛出的异常 exception 'PDOException' with message 'SQLSTATE[28000] [1045] Access denied for user 'root'@'localhost' (using password: YES)' in /Users/cla

我使用Zend_Db_表来管理我的MySQL连接。 它们工作得很好,但只有一个巨大的安全问题

如果出现错误,如MySQL关闭,ZF将抛出数据库连接用户名和密码异常

例如,我在配置中设置了错误的db密码。 这是抛出的异常

exception 'PDOException' with message 'SQLSTATE[28000] [1045] Access denied for user 'root'@'localhost' (using password: YES)' in /Users/claudiocanino/Dev/htdocs/include/Zend/Db/Adapter/Pdo/Abstract.php:129
Stack trace:
#0 /Users/claudiocanino/Dev/htdocs/include/Zend/Db/Adapter/Pdo/Abstract.php(129): PDO->__construct('mysql:dbname=ci...', 'root', 'rootads', Array)
#1 /Users/claudiocanino/Dev/htdocs/include/Zend/Db/Adapter/Pdo/Mysql.php(96): Zend_Db_Adapter_Pdo_Abstract->_connect()
#2 /Users/claudiocanino/Dev/htdocs/include/Zend/Db/Adapter/Abstract.php(459): Zend_Db_Adapter_Pdo_Mysql->_connect()
...
这里是清晰的用户名和密码。 如何修改Zend_Db_Table类,使其不在异常中显示合理的信息


感谢您不用更改显示错误选项或生产环境设置,您可以定义ErrorController

对于生产系统中的项目,几乎必须配备ErrorController。它捕获应用程序由于应用程序逻辑缺陷引发的任何异常,或者捕获没有任何关联控制器/操作或与路由器中定义的任何模式不匹配的任何URL


有关为Zend项目设置ErrorController的更多详细信息-

如果更改为
生产环境
环境,则不会显示堆栈跟踪。事实上,没有显示任何异常,只是您在
ErrorController
/视图中定义的异常。还可以查看php.ini中的
资源.frontController.params.displayExceptions
设置。如果它是
1
(或非零),则无论环境如何,都会显示异常。在我的php.ini中,我将error\u reporting设置为0,并将display\u errors设置为Off。代码中还有错误报告(0);但它仍然显示出同样该死的错误。你知道吗?谢谢各位