Я получаю следующую ошибку при попытке подключиться из моего окна Windows к моему ящику Linux:
Warning: PDO::__construct(): SSL operation failed with code 1. OpenSSL Error messages: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number
Это код подключения:
$dbE = new PDO( 'mysql:dbname=db_name;host=host_ip;', 'username', 'password', array( PDO::MYSQL_ATTR_SSL_KEY =>'client_side_path\client-key.pem', PDO::MYSQL_ATTR_SSL_CERT =>'client_side_path\client-cert.pem', PDO::MYSQL_ATTR_SSL_CA =>'client_side_path\ca-cert.pem' ) ); $dbE->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo 'Connected';
Любые идеи приветствуются.
Починил это. Причина заключалась в том, что путь на сервере B в ЦС был неправильным. Стоит отметить, что для исправления этого я попробовал соединение за пределами PHP непосредственно с сервера A, и у него возникла ошибка «плохое другое подтверждение подписи» – я тогда загрузил сертификат CA и обнаружил, что он пуст. Перезагрузите сервер, установите правильные пути как в my.cnf, так и в стартовом вызове сервера, и все исправлено. Действительно стоит попробовать непосредственное соединение mysql, поскольку оно дало совершенно другую ошибку, которая была намного полезнее, чем PDO.