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

GoDaddy切换Office365后PHPMailer SMTP连接失败求助

解决GoDaddy托管环境下PHPMailer连接Office365 SMTP失败的问题

你的问题核心是GoDaddy托管环境默认封锁了对外部SMTP服务器的出站连接,包括Office365的smtp.office365.com,所以无论更换端口还是加密方式,都会触发10013权限错误。以下是可行的解决方案:

方案1:使用GoDaddy自带的SMTP中继服务(推荐)

GoDaddy提供内部SMTP中继,无需认证且不会被防火墙拦截,只需调整PHPMailer设置:

$mail->SMTPDebug = 2;
$mail->isSMTP();
$mail->Host = 'relay-hosting.secureserver.net'; // 也可直接使用localhost
$mail->SMTPAuth = false; // 无需用户名密码认证
$mail->Port = 25;
// 关键:发件人邮箱必须属于你在GoDaddy托管的域名
$mail->From = 'your-domain-email@your-godaddy-domain.com';
$mail->FromName = 'myname';
$mail->addAddress('to@destination.com');

注意:From地址必须是你在GoDaddy绑定的域名下的邮箱,否则会被中继服务拒绝。

方案2:改用Sendmail模式发送(适合必须使用Office365邮箱的场景)

如果一定要用Office365邮箱发件,绕过SMTP端口限制,可切换为PHPMailer的Sendmail模式:

$mail->SMTPDebug = 2;
$mail->isSendmail(); // 替换原有的isSMTP()
// 发件人地址需与你的Office365邮箱完全一致
$mail->From = 'user@username.com';
$mail->FromName = 'myname';
$mail->addAddress('to@destination.com');

此方式依赖GoDaddy服务器上的Sendmail服务转发邮件到Office365,需确保你的Office365邮箱允许来自GoDaddy服务器的邮件转发。

方案3:联系GoDaddy支持调整防火墙规则(不推荐)

你可以尝试联系GoDaddy客服,申请解除对smtp.office365.com特定端口(587/465)的出站封锁,但GoDaddy通常不会为普通托管用户开放此权限,仅部分高级商务托管方案支持。

错误原因补充

你遇到的10013错误,在GoDaddy托管环境中本质是网络防火墙阻止了出站SMTP连接,而非PHP代码权限问题。本地PowerShell能成功发送,是因为你的本地网络不受GoDaddy防火墙限制。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 00:25:18