PHP SwiftMailer: отправка электронной почты с SMTP дает `SSL операция не выполнена`, когда startTLS включен

Я хочу отправить письмо используя SwiftMailer(v5.4.1) библиотека в Yii1(1.1.17), вот моя конфигурация для компонента почтовой программы в main.php (файл конфигурации):

'mailer' => array(
'class' => 'application.components.SwiftMailer',
'host' => 'XX.XX.XX.XX',
'type' => 'smtp',
'port' => 587,
'username' => 'username',
'password' => 'password',
'fromName' => 'sample_name',
'fromAddress' => 'sample_email',
'security' => 'tls',
),

Почтовый сервер и сервер приложений находятся во внутренней сети нашей компании.
Когда я пытаюсь отправить электронное письмо, я получаю это предупреждение.
Я хочу знать причину и отправлять электронные письма после того, как успешно выполнил рукопожатие с сервером, используя startTLS (он включен на сервере, заверенный сетевым менеджером).

stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed

/home/mohammad/workspace/ir.wsi.recruitment/protected/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/StreamBuffer.php(95)

083                 case 'blocking':
084                     if ($this->_stream) {
085                         stream_set_blocking($this->_stream, 1);
086                     }
087
088             }
089         }
090         $this->_params[$param] = $value;
091     }
092
093     public function startTLS()
094     {
095 main error:     return stream_socket_enable_crypto($this->_stream, true, STREAM_CRYPTO_METHOD_TLS_CLIENT);
096     }
097
098     /**
099      * Perform any shutdown logic needed.
100      */
101     public function terminate()
102     {
103         if (isset($this->_stream)) {
104             switch ($this->_params['type']) {
105                 case self::TYPE_PROCESS:
106                     fclose($this->_in);
107                     fclose($this->_out);

Stack Trace
#0
–
/home/mohammad/workspace/ir.wsi.recruitment/protected/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Transport/StreamBuffer.php(95): stream_socket_enable_crypto(resource, true, 9)

090         $this->_params[$param] = $value;
091     }
092
093     public function startTLS()
094     {
095         return stream_socket_enable_crypto($this->_stream, true, STREAM_CRYPTO_METHOD_TLS_CLIENT);
096     }
097
098     /**
099      * Perform any shutdown logic needed.
100      */

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]