WordPress SMTP连接超时故障求助:无法发送邮件
WordPress SMTP连接超时问题排查求助
问题概述
- 搭建WordPress站点时,先后使用Easy WP SMTP和WP Mail SMTP两款插件,搭配3组不同SMTP凭证,均出现Connection Timeout错误,常规SMTP配置完全失效
- 自行创建的测试联系表单无法发送邮件;使用BookingPress插件时,无论选择SMTP还是WP默认邮件方式,通知邮件均发送失败
- 已将超时限制从10调整至60,问题依旧存在
Easy WP SMTP完整错误日志
Versions: WordPress: 6.4.3 WordPress MS: No PHP: 8.1.27 Easy WP SMTP: 2.2.0 Params: Mailer: smtp Constants: No ErrorInfo: SMTP Error: Could not connect to SMTP host. Failed to connect to serverSMTP server error: Failed to connect to server SMTP code: 110 Additional SMTP info: Connection timed out Host: pop3.mailtrap.io Port: 1100 SMTPSecure: tls SMTPAutoTLS: bool(true) SMTPAuth: bool(true) Server: OpenSSL: OpenSSL 1.1.1w 11 Sep 2023 Apache.mod_security: No Debug: Email Source: Easy WP SMTP Mailer: Other SMTP SMTP Error: Could not connect to SMTP host. Failed to connect to serverSMTP server error: Failed to connect to server SMTP code: 110 Additional SMTP info: Connection timed out SMTP Debug: 2024-03-13 05:58:39 Connection: opening to pop3.mailtrap.io:1100, timeout=30, options=array() 2024-03-13 05:59:09 Connection failed. Error #2: stream_socket_client(): Unable to connect to pop3.mailtrap.io:1100 (Connection timed out) [/home/gur1yt4rjmck/public_html/mortgage.cybertrontechnologies.ca/wp-includes/PHPMailer/SMTP.php line 397] 2024-03-13 05:59:09 SMTP ERROR: Failed to connect to server: Connection timed out (110) SMTP Error: Could not connect to SMTP host. Failed to connect to server

排查建议
修正SMTP服务器配置
日志中使用的pop3.mailtrap.io:1100是POP3收信端口,并非SMTP发信端口。Mailtrap的正确SMTP地址为smtp.mailtrap.io,推荐端口:- 2525(非加密/STARTTLS)
- 465(SSL加密)
- 587(STARTTLS加密)
立即替换配置后重新测试。
检查服务器出站端口限制
联系主机商确认服务器是否允许出站连接到SMTP端口(25/465/587/2525),部分共享主机会默认封禁25端口。验证SSL与TLS配置
尝试关闭SMTPAutoTLS选项,手动指定SMTPSecure为ssl或tls测试;同时确认服务器OpenSSL版本与SMTP服务器要求兼容(当前1.1.1w符合主流要求)。排除插件/主题冲突
禁用除SMTP插件外的所有插件,切换到WordPress默认主题(如Twenty Twenty-Four),重新测试邮件发送,排查是否存在第三方代码干扰。直接测试PHP SMTP连接
在站点根目录创建smtp-test.php文件,填入以下代码替换凭证后运行,验证底层连接是否正常:<?php require_once ABSPATH . WPINC . '/PHPMailer/PHPMailer.php'; require_once ABSPATH . WPINC . '/PHPMailer/SMTP.php'; $mail = new PHPMailer\PHPMailer\PHPMailer(true); try { $mail->isSMTP(); $mail->Host = 'smtp.mailtrap.io'; $mail->Port = 2525; $mail->SMTPSecure = 'tls'; $mail->SMTPAuth = true; $mail->Username = '你的Mailtrap用户名'; $mail->Password = '你的Mailtrap密码'; $mail->setFrom('test@example.com', 'Test Sender'); $mail->addAddress('你的测试邮箱', 'Test Recipient'); $mail->Subject = 'SMTP连接测试'; $mail->Body = '测试邮件发送成功'; $mail->send(); echo '邮件发送成功'; } catch (Exception $e) { echo '错误信息: ' . $mail->ErrorInfo; } ?>咨询主机商特殊限制
部分共享主机可能限制SMTP出站流量,或强制要求使用主机自带的邮件服务器,可直接联系主机商获取专属SMTP配置方案。
内容的提问来源于stack exchange,提问作者Nitin Sharma
相关产品推荐
相关产品推荐

