Как подключиться к экземпляру Amazon MySQL RDS через PHP через SSL

StackOverflow https://stackoverflow.com/questions/4695650

Вопрос

У меня есть экземпляр EC2, запускающий сайт WordPress. WordPress DB находится на экземпляре RDS. Я хочу подключиться к БД над SSL.

Из того, что я прочитал, расширение MySQL, которое использует WordPress из коробки, не поддерживает SSL. Итак, я установил сценарий WordPress DB, который использует MySQLI, который поддерживает SSL.

Проблема, с которой я столкнулся, заключается в том, что Amazon поставляет только один файл ключа (больше информации), и все примеры, которые я могу найти, используя MySQLI по SSL, включают не менее 3 файлов:

$db = mysqli_init();
$db->ssl_set('server-key.pem','server-cert.pem','cacert.pem',NULL,NULL); 

Я могу подключиться к своему БД через SSL из приложения командной строки MySQL. Может ли кто -нибудь сказать мне, что мне нужно сделать, чтобы получить расширение MySQLI PHP, учитывая, что у меня есть только 1 файл?

Это было полезно?

Решение

Оказывается, это было менее сложным, чем я думал. Получение уровня отчетности об ошибках обнаружил ошибку в моем коде, которую я не поймал. Использование SSL_SET Таким образом работает:

$db = mysqli_init();
$db->ssl_set(NULL,NULL,'/path/to/mysql-ssl-ca-cert.pem',NULL,NULL);
$db->real_connect($dbhost,$dbuser,$dbpassword,$dbname);

Другие советы

Попробуй это:

$db = mysqli_init();
$db->ssl_set(null, 'https://rds.amazonaws.com/doc/mysql-ssl-ca-cert.pem', null, null, null);
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top