我有一个简单的网站,我在这里使用PDO建立到Mysql服务器的连接。
$dbh = new PDO('mysql:host=localhost;dbname=DB;port=3306', 'USER',
'SECRET',array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
我在我的网站有一些流量,并达到服务器连接限制,网站抛出这个错误,与我的PLAIN密码!
Fatal error: Uncaught exception
‘PDOException’ with message
‘SQLSTATE[08004] [1040] Too many
connections’ in
/home/domain/html/index.php:xxx
Stack trace: #0
/home/domain/html/index.php(64):
PDO->__construct(‘mysql:host=loca…’,
‘USER’, ‘SECRET’, Array) #1
{main} thrown in
/home/domain/html/index.php on
line 64
讽刺的是,我切换到PDO为安全的原因,所以这真的震惊了我,因为这个确切的错误是你可以很容易地在大多数网站使用简单的http洪水挑衅。
我现在包裹我的连接在try / catch块,但仍然我认为这是灾难性的!
我是新的PDO,所以我的问题是:我该怎么做才能考虑安全?如何以安全的方式建立连接?还有其他已知的安全漏洞,像这个,我必须知道吗?