M1状态在当前服务器配置下发送邮件异常 报'Unable to connect via TLS'错误

作者:admi... 点击数: 0 收藏到会员中心
最后编辑时间: 2021-10-29 10:41

每天遇到一个奇特的问题:


报错内容为

2021-10-28T08:00:02+00:00 ERR (3):
exception 'Zend_Mail_Protocol_Exception' with message 'Unable to connect via TLS' in /home/public_html/lib/Zend/Mail/Protocol/Smtp.php:211
Stack trace:**

此原因多数是因为服务器SMTP连接时所使用的TLS版本较高,而M1上使用的1.0版本无法安全连接通信导致。

只需要做如下操作修复此问题

 复制文件从

lib/Zend/Mail/Protocol/Smtp.php

app/code/local/Zend/Mail/Protocol/Smtp.php

修改此文件内容第205行从

   if (!stream_socket_enable_crypto($this->_socket, true,  STREAM_CRYPTO_METHOD_TLS_CLIENT)) {
                /**
                 * @see Zend_Mail_Protocol_Exception
                 */
                #require_once 'Zend/Mail/Protocol/Exception.php';
                throw new Zend_Mail_Protocol_Exception('Unable to connect via TLS');
            }

   if (!stream_socket_enable_crypto($this->_socket, true,  STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT)) {
                /**
                 * @see Zend_Mail_Protocol_Exception
                 */
                #require_once 'Zend/Mail/Protocol/Exception.php';
                throw new Zend_Mail_Protocol_Exception('Unable to connect via TLS');
            }


付费内容限时免费中...

但是极个别SMTP服务器未配置TLS1.2及更高版本,那么只能使用1.1测试。

用以下代码

   if (!stream_socket_enable_crypto($this->_socket, true,  STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT)) {
                /**
                 * @see Zend_Mail_Protocol_Exception
                 */
                #require_once 'Zend/Mail/Protocol/Exception.php';
                throw new Zend_Mail_Protocol_Exception('Unable to connect via TLS');
            }


内容说明:
如您需要转载本文请保留以下信息是对作者发文的支持与尊重:

M1状态在当前服务器配置下发送邮件异常 报'Unable to connect via TLS'错误 来源于 https://www.magentola.com/news-read-249.html
上一篇:Magento1.x 去FLASH上传扩展HTML5 Uploader
下一篇:M1解决URL不存在或是重复问题
相关内容
产品推荐