Shopware 5发送邮件报错504 5.7.4:认证类型不被识别求助
Shopware 5 SMTP认证报错504 5.7.4问题排查
问题描述
使用Shopware 5发送邮件时收到如下错误:
504 5.7.4 Unrecognized authentication type
完整SMTP交互日志:
^ array:13 [▼ 0 => "220 SRV02EX16.private.domain.de Microsoft ESMTP MAIL Service ready at Wed, 12 Jul 2023 15:33:19 +0200 " 1 => "EHLO mx02.domain.de " 2 => "250-SRV02EX16.private.domain.de Hello [IPAddress] " 3 => "250-SIZE 37748736 " 4 => "250-PIPELINING " 5 => "250-DSN " 6 => "250-ENHANCEDSTATUSCODES " 7 => "250-STARTTLS " 8 => "250-8BITMIME " 9 => "250-BINARYMIME " 10 => "250 CHUNKING " 11 => "AUTH LOGIN " 12 => "504 5.7.4 Unrecognized authentication type " ]
通过openssl手动测试SMTP流程可正常发送邮件,测试命令如下:
openssl s_client -crlf -connect mx02.domain.de:25 -starttls smtp EHLO mx02.domain.de AUTH LOGIN username passwrod MAIL FROM: im-shop@domain.de rcpt to: mymail DATA subject: Your Subject from: im-shop@domain.de to: mymail . QUIT
原因分析
- 未启用STARTTLS就发起认证:从日志可见,服务器返回了
250-STARTTLS,说明要求先通过STARTTLS建立加密连接,再进行认证。手动测试时通过-starttls smtp参数完成了TLS握手,后续认证在加密连接中发送,因此成功。而Shopware的邮件配置中可能未启用STARTTLS选项,导致认证请求在未加密连接上发送,服务器拒绝识别该认证类型。 - Shopware认证配置不匹配:检查Shopware后台邮件设置,确认认证方式是否选择为
LOGIN。若配置项错误设置为其他类型(如PLAIN),但程序实际发送LOGIN请求,会导致服务器无法识别。同时需确保配置项已正确同步到SMTP客户端。 - SMTP命令顺序异常:Shopware使用的SwiftMailer等邮件库可能启用了PIPELINING(流水线)功能,在EHLO后未等待服务器返回完整支持列表就批量发送命令,导致服务器在未处理STARTTLS的情况下收到认证请求,触发错误。手动测试是分步执行命令,不存在该问题。
内容的提问来源于stack exchange,提问作者Milad
相关产品推荐
相关产品推荐

