Мне нужно установить SSL-соединение с моим веб-приложением PHP-PDO. У меня есть MySQL workbench 5.7, и я не знаю, как и с чего начать.
Я видел в Интернете разные сообщения, объясняющие, как это сделать с помощью mysqld
и shell>
, например 6.4.4 Настройка MySQL для использования безопасных соединений и 5.3.4 Мастер SSL (сертификаты) в руководстве.
Я изменил соединение на:
$conn = new PDO("mysql:host=$dbhost;dbname=$dbname",$dbuser,$dbpass, array(
PDO::MYSQL_ATTR_SSL_KEY =>'/etc/mysql/ssl/client-key.pem',
PDO::MYSQL_ATTR_SSL_CERT=>'/etc/mysql/ssl/client-cert.pem',
PDO::MYSQL_ATTR_SSL_CA =>'/etc/mysql/ssl/ca-cert.pem'
));
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$conn->exec("SET CHARACTER SET utf8mb4");
Затем я перешел к рабочей среде MySQL и щелкнул База данных → Подключиться к базе данных → Вкладка SSL → Мастер SSL. Я проверил Use default Parameters
, и у меня есть эта ошибка:
OpenSSL Win64 установлен в C:\OpenSSL-Win64
.
В чем проблема и как ее исправить?
C:\OpenSSL-Win64\bin
должен быть на пути. Это делаетC:\OpenSSL-Win64\bin\openssl.exe
доступным для программ, использующих имя команды (openssl.exe
), а не полный путь (C:\OpenSSL-Win64\bin\openssl.exe
). Или вам нужно сообщить рабочей среде местонахождение двоичного файла OpenSSL. - person jww   schedule 21.07.2017%PATH%
в Windows. Для этого вам не нужен пост Stack Overflow. - person jww   schedule 21.07.2017%PATH%
уже является системной переменной, поэтому вам не нужно было ее добавлять. Обновите свой вопрос, включив в него значение%PATH%
(распечатайте его из командной строки и вставьте в вопрос) и укажите, что вы сделали, чтобы внести изменения в системные компоненты, которые могут зависеть от него. - person jww   schedule 21.07.2017