Ошибка соединения OpenSSL, вызванная stream_socket_enable_crypto()
В моем коде php у меня есть следующая строка, которая использует класс SWIFT MAILER
if(!stream_socket_enable_crypto($this->smtp_conn, true, STREAM_CRYPTO_METHOD_TLS_CLIENT)) {
return false;
}
однако редко (не всегда) я получаю следующую ошибку php
stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages:
error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number
я не уверен, где проблема, или я должен игнорировать это, поскольку это происходит только время от времени
3 ответа
У меня была такая же ошибка.
stream_socket_enable_crypto(): операция SSL не удалась с кодом 1. Сообщения об ошибках OpenSSL: ошибка: 1408F10B: процедуры SSL: SSL3_GET_RECORD: неверный номер версии
Это было вызвано неправильными настройками SMTP. Я имел:
$transport = Swift_SmtpTransport::newInstance('mail.myserver.com', 465, 'tls');
и как только я исправил это на
$transport = Swift_SmtpTransport::newInstance('mail.myserver.com', 465, 'ssl');
это работало нормально. Довольно неинтуитивное сообщение об ошибке, но в конце концов я его получил.
Типично routines:SSL3_GET_RECORD:wrong version number
код для сервера, который вообще не использует SSL/TLS
Итак, не забудьте проверить это в первую очередь.
В вашем php.ini поиск строки
; extension=php_openssl.dll
и удалить; так становится:
extension=php_openssl.dll
Затем сохраните, перезагрузите и наслаждайтесь.