平台:Ubuntu14.04 + XAMPP 5.5.24 \ 5.6.8 + OpenSSL的PHP 5.6.8 cerficate验证失败
错误信息,同时从PHPMailer的发送电子邮件:在一些博客
Warning: stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed in /opt/lampp/htdocs/Sentrifugo_2.0/install/PHPMailer/class.smtp.php on line 270
我已阅读,我们可以允许通过SMTPOptions不安全的连接,并通过与下面的子类类SMTP实现它:
$mail->SMTPOptions = array(
'ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
);
我会很感激,如果任何人都可以在确认应该在哪里支持我正在配置这个,因为我已经搜索了class.smtp.php和class.phpmailer.php文件,但无法找到verify_peer。
此外,上线270,我发现下面的代码在class.smtp.php:
/**
* Initiate a TLS (encrypted) session.
* @access public
* @return bool
*/
public function startTLS()
{
if (!$this->sendCommand('STARTTLS', 'STARTTLS', 220)) {
return false;
}
// Begin encrypted connection
if (!stream_socket_enable_crypto(
$this->smtp_conn,
true,
STREAM_CRYPTO_METHOD_TLS_CLIENT
)) {
return false;
}
return true;
}
请建议 - 提前感谢
感谢Synchro的信息 - 但作为一个noob你可以请也协助我在哪里必须输入上述SMTPOptions代码 - 我的意思是在哪个文件中,哪个函数以及该函数在更改后应该是什么样子?谢谢 – roohit80
这个改变发生在你自己的代码中,你正在使用PHPMailer。 '$ mail'只是您正在使用的PHPMailer实例的名称。 – Synchro
Synchro - 添加 - 我试图让Sentrifugo应用程序使用phpmailer发送电子邮件,我们的电子邮件托管在办公室365。我甚至尝试使用Gmail和雅虎帐户,但仍然错误消息是相同的。 :( – roohit80