Я пытаюсь отправить электронную почту с помощью PHPMailer и Gmail. Он отлично работал на PHP 5.5, но когда я обновился до php 5.6, я получил эту ошибку (tls на порту 587): stream_socket_enable_crypto(): операция SSL завершилась неудачей с кодом 1. OpenSSL Сообщения об ошибках: ошибка: 14090086: процедуры SSL: SSL3_GET_SERVER_CERTIFICATE: проверка сертификата не смогли
Если я попытаюсь использовать ssl на порту 465, я получаю это вместо: 2015-05-29 15:11:58 SMTP ERROR: Не удалось подключиться к серверу: (0) 2015-05-29 15:11:58 Ошибка SMTP connect(), https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
Я искал googled, и единственное, что я узнал, это то, что я должен настроить OAUTH2, но я не знаю, как это сделать. Для этого я тоже нашел googled и нашел это: https://github.com/PHPMailer/PHPMailer/wiki/Using-Gmail-with-XOAUTH2
Я последовал за этим и застрял, когда они сказали, что я должен обновить get_auth_token.php. Я не могу найти этот файл нигде. Вот как я установил phpmailer с помощью композитора: "phpmailer/phpmailer": "~ 5.2"
Кто-нибудь знает, как заставить его работать с OAUTH2 или без него? Я использую php 5.6.8
Заранее спасибо, Busarna4
PHP 5.6 вводит проверку сертификатов SSL
Поэтому, если ваша конфигурация нарушена, она не сработает с этим SSL3_GET_SERVER_CERTIFICATE: проверка сертификата не удалась. Вы должны исправить свой SSL, но вы можете вернуться к старому поведению, переопределив PHP MAILER
и передав эти параметры функции smtpConnect
таким образом.
$options = array(
'ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
);
@Courtesy Synchro