You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TYPO3从8升级至11后SMTP的TLS配置失效求助

TYPO3 8升级到11后SMTP配置失效问题排查与解决

将TYPO3从8版本升级到11版本后,安装工具中的SMTP配置无法正常工作。原TYPO3 8中的SMTP配置可以正常发送邮件,但升级后多种配置尝试均失败。

TYPO3 8中正常工作的配置

'MAIL' => [
    'transport' => 'smtp',
    'transport_sendmail_command' => '',
    'transport_smtp_encrypt' => 'tls',
    'transport_smtp_password' => 'xyz my password',
    'transport_smtp_server' => 'mymailserver.de:465',
    'transport_smtp_username' => 'user',
],

升级后尝试的无效配置

尝试1:设置transport_smtp_encrypt为false

'MAIL' => [
    'transport' => 'smtp',
    'transport_sendmail_command' => '',
    'transport_smtp_encrypt' => false,
    'transport_smtp_password' => 'xyz my password',
    'transport_smtp_server' => 'mymailserver.de:465',
    'transport_smtp_username' => 'user',
],

尝试2:重复设置transport_smtp_encrypt为false

'MAIL' => [
    'transport' => 'smtp',
    'transport_sendmail_command' => '',
    'transport_smtp_encrypt' => false,
    'transport_smtp_password' => 'xyz my password',
    'transport_smtp_server' => 'mymailserver.de:465',
    'transport_smtp_username' => 'user',
],

尝试3:设置transport_smtp_encrypt为空字符串

'MAIL' => [
    'transport' => 'smtp',
    'transport_sendmail_command' => '',
    'transport_smtp_encrypt' => '',
    'transport_smtp_password' => 'xyz my password',
    'transport_smtp_server' => 'mymailserver.de:465',
    'transport_smtp_username' => 'user',
],

错误提示

每次配置后都会收到如下错误:

无法发送邮件,请验证$GLOBALS['TYPO3_CONF_VARS']['MAIL'][*]配置是否有效。错误信息:无法与主机"ssl://mymailserver.de:465"建立连接:stream_socket_client():SSL操作失败,错误码1。OpenSSL错误信息:error:1408F10B:SSL routines:ssl3_get_record:wrong version number

错误中的error:1408F10B表明TLS配置未正确生效,而SMTP服务器仅支持TLS连接。服务器地址、端口、用户名和密码均与TYPO3 8中一致,仅transport_smtp_encrypt参数因版本变更改为接受布尔值true/false或空值。

问题原因与解决方案

核心原因

TYPO3 10+版本中,transport_smtp_encrypt参数的逻辑发生了明确变化:

  • true:直接使用SSL加密(对应端口465,连接建立阶段就启用SSL)
  • false:使用STARTTLS加密(对应端口587,先建立明文连接再升级为TLS)

你的SMTP服务器使用端口465,但配置中transport_smtp_encrypt=false会触发STARTTLS逻辑,导致在465端口尝试明文连接后升级TLS,与服务器的直接SSL连接要求不匹配,从而出现版本不兼容的错误。

正确配置方案

方案1:适配端口465的SSL连接

将transport_smtp_encrypt设置为true,保持端口465不变:

'MAIL' => [
    'transport' => 'smtp',
    'transport_sendmail_command' => '',
    'transport_smtp_encrypt' => true,
    'transport_smtp_password' => 'xyz my password',
    'transport_smtp_server' => 'mymailserver.de:465',
    'transport_smtp_username' => 'user',
],

方案2:改用STARTTLS模式(若服务器支持)

将端口改为587,设置transport_smtp_encrypt=false:

'MAIL' => [
    'transport' => 'smtp',
    'transport_sendmail_command' => '',
    'transport_smtp_encrypt' => false,
    'transport_smtp_password' => 'xyz my password',
    'transport_smtp_server' => 'mymailserver.de:587',
    'transport_smtp_username' => 'user',
],

关键逻辑对应

  • 端口465(SMTPS):需要直接建立SSL连接 → 对应transport_smtp_encrypt=true
  • 端口587(SMTP+STARTTLS):先明文再升级TLS → 对应transport_smtp_encrypt=false

内容的提问来源于stack exchange,提问作者lisardo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 18:28:24