首页 / PHP / php-如何防止在PDO错误时转储密码
php-如何防止在PDO错误时转储密码
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php-如何防止在PDO错误时转储密码,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1172字,纯文字阅读大概需要2分钟。
内容图文
![php-如何防止在PDO错误时转储密码](/upload/InfoBanner/zyjiaocheng/659/0b4a603fb073427699a96ed275759ef7.jpg)
我的MySQL数据库中有太多的主机PDO异常:
exception 'PDOException' with message 'SQLSTATE[HY000] [1129] Host
'[IP ADDRESS]' is blocked because of many connection errors; unblock
with 'mysqladmin flush-hosts'' in /var/www/libs/Database.php:15
我理解此错误,但是真正的问题出在堆栈跟踪中,该跟踪将数据库名称,登录名和密码转储到控制台中:
Stack trace:
#0 /var/www/libs/Database.php(15): PDO->__construct('mysql:host=conf...',
'[db name]', '[db password]...', Array)
由于这是AJAX请求,因此它转储到控制台浏览器中,这显然是一个问题.
如何避免这种情况发生?我是否配置了错误的PHP?
解决方法:
As this is an AJAX request, it dumps into the console browser
当然,PHP(与其他服务器端语言一样)是在另一台计算机上执行的,并且无法访问浏览器的控制台.最有可能的是,您的PHP和JavaScript都不旨在优雅地处理错误情况.一些技巧:
>始终在生产框中将display_errors设置为false.确保记录错误消息.
>调整服务器端代码,即使在数据库关闭时,它也可以生成有效的输出.例如,如果脚本应生成JSON,则即使出现错误也应发送JSON数据.为此:
>捕获PDOException
>记录错误详细信息
>发送JSON数据以告知存在错误,例如:
{"status": "error", "info": "Database is down"}
>调整客户端代码以处理AJAX响应中的任何类型的错误,包括状态为error的正确JSON和缺少正确的JSON.
内容总结
以上是互联网集市为您收集整理的php-如何防止在PDO错误时转储密码全部内容,希望文章能够帮你解决php-如何防止在PDO错误时转储密码所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。