我一直在使用一个使用 PDO 连接到 MySQL 数据库的 PHP 应用程序。每当连接出现故障时,我们都会收到如下错误:
在更新服务器详细信息或向集群添加新服务器时,通常会发生这种情况,并且最终用户偶尔会看到这种情况。我特别担心,因为产生的错误会暴露用于数据库的连接详细信息。是否可以更改错误报告,以便我们在不包含连接详细信息本身的情况下显示错误是什么?
最佳答案
这就是您要找的吗?
try {
$rs = $db->prepare('query_here');
$rs->execute();
$foo = $rs->fetchAll();
} catch (PDOException $e) {
die("Oh noes! There's an error in the query!");
}
在生产中,如果您无法访问“php.ini”文件,则设置error_reporting(0)
,如果您可以编辑“php.ini”文件,则设置display_errors = off
.
关于PHP 错误暴露了数据库凭据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21330753/