正在显示
2 个修改的文件
包含
26 行增加
和
2 行删除
@@ -1030,11 +1030,15 @@ class Imap { | @@ -1030,11 +1030,15 @@ class Imap { | ||
1030 | private function socketOpen(int $timeout = 30){ | 1030 | private function socketOpen(int $timeout = 30){ |
1031 | if(!is_resource($this->socket)){ | 1031 | if(!is_resource($this->socket)){ |
1032 | $this->timeout = $timeout ? : 30; | 1032 | $this->timeout = $timeout ? : 30; |
1033 | + | ||
1034 | + // 是否验证证书 | ||
1035 | + $isssl = in_array(parse_url($this->host)['host']??'1-1',['mail.laser-tech.com.cn']); | ||
1036 | + | ||
1033 | // 链接服务器 | 1037 | // 链接服务器 |
1034 | $this->socket = stream_socket_client($this->host, $errno, $error, $this->timeout,STREAM_CLIENT_CONNECT,stream_context_create([ | 1038 | $this->socket = stream_socket_client($this->host, $errno, $error, $this->timeout,STREAM_CLIENT_CONNECT,stream_context_create([ |
1035 | 'ssl' => [ | 1039 | 'ssl' => [ |
1036 | - 'verify_peer' => false, // 有的证书和域名不匹配,这里关闭认证 | ||
1037 | - 'verify_peer_name' => false,// 有的证书和域名不匹配,这里关闭认证 | 1040 | + 'verify_peer' => !$isssl, // 有的证书和域名不匹配,这里关闭认证 |
1041 | + 'verify_peer_name' => !$isssl,// 有的证书和域名不匹配,这里关闭认证 | ||
1038 | // 'capture_peer_cert' => true, | 1042 | // 'capture_peer_cert' => true, |
1039 | // 'capture_peer_cert_chain' => true, | 1043 | // 'capture_peer_cert_chain' => true, |
1040 | // 'SNI_enabled' => true, | 1044 | // 'SNI_enabled' => true, |
@@ -172,6 +172,16 @@ class MailFun { | @@ -172,6 +172,16 @@ class MailFun { | ||
172 | $mail->CharSet = 'utf-8'; | 172 | $mail->CharSet = 'utf-8'; |
173 | $mail->Encoding = PHPMailer::ENCODING_QUOTED_PRINTABLE; | 173 | $mail->Encoding = PHPMailer::ENCODING_QUOTED_PRINTABLE; |
174 | 174 | ||
175 | + // 是否验证证书 | ||
176 | + if(in_array(parse_url($smtp['host'])['host']??'1-1',['mail.laser-tech.com.cn'])){ | ||
177 | + $mail->SMTPOptions = [ | ||
178 | + 'ssl' => [ | ||
179 | + 'verify_peer' => false, // 有的证书和域名不匹配,这里关闭认证 | ||
180 | + 'verify_peer_name' => false,// 有的证书和域名不匹配,这里关闭认证 | ||
181 | + ] | ||
182 | + ]; | ||
183 | + } | ||
184 | + | ||
175 | //Recipients,设置发件人 | 185 | //Recipients,设置发件人 |
176 | $mail->setFrom($email['email'], $data['nickname']??'');// 显示邮件来自谁 | 186 | $mail->setFrom($email['email'], $data['nickname']??'');// 显示邮件来自谁 |
177 | // //设置收件人 | 187 | // //设置收件人 |
@@ -280,6 +290,16 @@ class MailFun { | @@ -280,6 +290,16 @@ class MailFun { | ||
280 | $mail->Port = $smtp['port']; //TCP port to connect to; use 587 if you have set `SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS` | 290 | $mail->Port = $smtp['port']; //TCP port to connect to; use 587 if you have set `SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS` |
281 | $mail->CharSet = 'utf-8'; | 291 | $mail->CharSet = 'utf-8'; |
282 | $mail->Encoding = PHPMailer::ENCODING_QUOTED_PRINTABLE; | 292 | $mail->Encoding = PHPMailer::ENCODING_QUOTED_PRINTABLE; |
293 | + // 是否验证证书 | ||
294 | + if(in_array(parse_url($smtp['host'])['host']??'1-1',['mail.laser-tech.com.cn'])){ | ||
295 | + $mail->SMTPOptions = [ | ||
296 | + 'ssl' => [ | ||
297 | + 'verify_peer' => false, // 有的证书和域名不匹配,这里关闭认证 | ||
298 | + 'verify_peer_name' => false,// 有的证书和域名不匹配,这里关闭认证 | ||
299 | + ] | ||
300 | + ]; | ||
301 | + } | ||
302 | + | ||
283 | 303 | ||
284 | try { | 304 | try { |
285 | return $mail->smtpConnect(); | 305 | return $mail->smtpConnect(); |
-
请 注册 或 登录 后发表评论