[PHP PEAR邮件发送失败,无法使用SSL + AUTH

问题描述 投票:0回答:1

使用类似于下面的代码:在服务器端,我收到一个错误,似乎暗示它正在尝试使用证书而不是我提供的用户/密码(也在下面)。其他人看到了,您知道了吗?我已经尝试使用Google搜索错误,但似乎只得到了一些无关的结果。 Linux / PHP7.2.5(在PHP5.4.20上也失败),但在Windows / PHP7下似乎可以正常工作]

来自mail.XXXXXX.com [xxx.xxx.xxx.xxx]的SSL_accept错误:0警告:TLS库问题:20353:错误:14094418:SSL例程:SSL3_READ_BYTES:tlsv1警报未知ca:s3_pkt.c:1293:SSL警报编号48:

<?php
 require_once "Mail.php";

 $from = "Sandra Sender <[email protected]>";
 $to = "Ramona Recipient <[email protected]>";
 $subject = "Hi!";
 $body = "Hi,\n\nHow are you?";

 $host = "ssl://mail.example.com";
 $username = "smtp_username";
 $password = "smtp_password";
 $port = 465;

 $headers = array ('From' => $from,
   'To' => $to,
   'Subject' => $subject);
 $smtp = Mail::factory('smtp',
   array ('host' => $host,
     'port' => $port,
     'auth' => 'PLAIN',
     'username' => $username,
     'password' => $password));

 $mail = $smtp->send($to, $headers, $body);

 if (PEAR::isError($mail)) {
   echo("<p>" . $mail->getMessage() . "</p>");
  } else {
   echo("<p>Message successfully sent!</p>");
  }
 ?>
php email ssl pear
1个回答
0
投票

错误消息的相关部分是

未知的ca

这意味着“证书由未知的证书颁发机构签名”。

检查根CA列表是否在计算机上是最新的。

© www.soinside.com 2019 - 2024. All rights reserved.