【问题标题】:it is a timeout error when sending mail by using smtp.office365.com in Opencart在 Opencart 中使用 smtp.office365.com 发送邮件时出现超时错误
【发布时间】:2020-05-19 13:36:44
【问题描述】:

我最近将 OpenCart 从 Lunix 服务器迁移到 Windows Server (WAMP) 此外,邮件设置已从 Mail 更改为 SMTP (office365.com)

我的 Opencart 版本是 2.0.2.0,SMTP 设置是

邮件协议: SMTP

邮件参数: -finfo@somedomain.com

SMTP 主机名: smtp.office365.com

SMTP 用户名: shop@somedomain.com

SMTP 密码: mypassword

SMTP 端口: 587

SMTP 超时: 5

我发现邮件功能的一个奇怪场景。 注册新用户时总是出现以下错误。然后,当我单击“返回”按钮再次注册新用户时,更改另一封电子邮件,它工作正常。然而,当我等了一个小时再做一次。问题又出现了。

这是一条错误消息:

警告:stream_socket_enable_crypto(): SSL: Handshake timed out in C:\wamp64\www\system\modification\system\library\mail.php 在第 237 行 注意:错误:服务器不接受 EHLO!在 C:\wamp64\www\system\modification\system\library\mail.php 在第 254 行

上的代码

line 237 --> stream_socket_enable_crypto($handle, true, STREAM_CRYPTO_METHOD_TLS_CLIENT);
line 253 --> if (substr($reply, 0, 3) != 250) {
line 254 --> trigger_error('Error: EHLO not accepted from server!');
line 255 --> exit();
line 256 --> }

我不知道。我该如何解决?

【问题讨论】:

    标签: php smtp office365 opencart


    【解决方案1】:

    尝试将ssl://tls:// 添加到您的主机,例如

    SMTP 主机名: ssl://smtp.office365.com

    SMTP 主机名: tls://smtp.office365.com

    取决于您的 587 端口支持哪种协议。

    【讨论】:

    • 谢谢你的回答,我很累改变了这两个设置,但它不起作用。第一次发送邮件仍然失败。
    • 那绝对不是 opencart 的问题。这都是关于 WAMP 的。也许尝试添加服务器配置extension=php_openssl.dll,然后检查。如果这个dll存在。但是你用 Windows 和 WAMP 来托管网站 - 坏主意。 Windows 不适合虚拟主机,有很多限制
    猜你喜欢
    • 2022-08-17
    • 2021-08-02
    • 1970-01-01
    • 1970-01-01
    • 2017-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多