Mysqli->;ssl_设置php接受任何字符串
嗨,我有可能是有史以来最奇怪的事情,也可能是因为今天太热了 我正在尝试与使用“requiressl”设置的用户连接到mysql实例 用户工作正常,从linux命令行使用mysql,一切正常 现在,当我使用下面的代码时,使用正确的real_connect()参数,php连接到mysql 即使我已将垃圾传递到ssl_set()中 如果我像这样设置ssl\u set,或者将行注释掉Mysqli->;ssl_设置php接受任何字符串,php,ssl,mysqli,Php,Ssl,Mysqli,嗨,我有可能是有史以来最奇怪的事情,也可能是因为今天太热了 我正在尝试与使用“requiressl”设置的用户连接到mysql实例 用户工作正常,从linux命令行使用mysql,一切正常 现在,当我使用下面的代码时,使用正确的real_connect()参数,php连接到mysql 即使我已将垃圾传递到ssl_set()中 如果我像这样设置ssl\u set,或者将行注释掉 $mysqli->ssl_set('', null, null, null, null); 我得到了预期的ssl
$mysqli->ssl_set('', null, null, null, null);
我得到了预期的ssl错误
你知道为什么它允许ssl连接使用随机字符串作为密钥吗?文档说这是一个文件位置
$mysqli = mysqli_init();
$mysqli->ssl_set('asdad', null, null, null, null);
$connected = $mysqli->real_connect('HOST',
'USER',
'PASSWROD',
'DATABASE',
3306,
null,
MYSQLI_CLIENT_SSL);
因此,不需要在php中设置自定义证书。然而,为了证明这一点,我回到命令行并打成平局
mysql -uUSER -pPASSWORD -hHOST --ssl
而不是
mysql -uUSER -pPASSWORD -hHOST --ssl_ca=mysql-ssl-ca-cert.pem
第一个命令不起作用,第二个命令起作用。仍然对这里发生的事情感到非常困惑。我不知道这是重复的,但可能有用,谢谢,但我以前看过那篇文章。如果我读对了,他们根本无法连接。我可以使用无效/不存在的ssl证书进行连接。我不应该这样做。我想知道php somehwere中是否有默认证书,它是通过ssl连接的,但没有验证连接。这可能吗?你有没有想过?我现在也有同样的问题,我一辈子都搞不清楚!
mysql -uUSER -pPASSWORD -hHOST --ssl
mysql -uUSER -pPASSWORD -hHOST --ssl_ca=mysql-ssl-ca-cert.pem