在
php脚本中使用error_reporting(0)是否会通过不报告错误来防止使用SQLi或XSS进行黑客攻击?
使用 error_reporting(0)
非常危险;你隐藏了警告,这些警告可能会为不稳定的编码提供重要线索。同时,它不会阻止SQL注入问题或xss。
我的建议:始终设置error_reporting(-1)
,并使用error_log
记录所有错误,或者使用 set_error_handler()
编写自定义错误处理程序来处理错误,而不会在页面上显示错误。在开发过程中,还应始终启用display_errors
。
请注意,只有良好的编码实践和适当的测试才能减轻黑客攻击,但完全防止黑客攻击需要更多。采用防御性编程,或者让伯恩斯坦辅导你;-)
通过执行 error_reporting(0),您只会对用户隐藏错误。在某些情况下,尽量减少黑客攻击可能会有所帮助,但肯定不会是XSS攻击。