PHPMailer本地运行正常但Azure生产环境无法发送邮件求助
PHPMailer部署到Azure生产环境后无法发送邮件求助
各位大佬好!我遇到个头疼的问题:在自己笔记本的本地开发环境里,用PHPMailer发送邮件完全正常,测试了好多次都没问题,但部署到Azure生产环境之后,邮件发送功能彻底失效了,完全没反应。
我使用的PHPMailer核心代码
use PHPMailer\PHPMailer\PHPMailer; use PHPMailer\PHPMailer\Exception; require 'vendor/autoload.php'; try { $mail = new PHPMailer(true); // SMTP配置 $mail->isSMTP(); $mail->Host = 'smtp.example.com'; // 替换为实际SMTP服务器 $mail->SMTPAuth = true; $mail->Username = 'my-email@example.com'; $mail->Password = 'my-smtp-password'; $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS; $mail->Port = 465; // 收件人设置 $mail->setFrom('sender@example.com', 'Sender Name'); $mail->addAddress('recipient@example.com', 'Recipient Name'); // 邮件内容 $mail->isHTML(true); $mail->Subject = 'Test Email from Azure'; $mail->Body = '<p>This is a test email sent via PHPMailer on Azure.</p>'; $mail->AltBody = 'This is a test email sent via PHPMailer on Azure.'; $mail->send(); echo '邮件发送成功'; } catch (Exception $e) { echo "发送失败: {$mail->ErrorInfo}"; }
我已经做了不少尝试:
- 翻遍了PHPMailer官方文档,也全网搜了各种解决方案,甚至参考了《PHPMailer问题排查指南》,但都没找到适配Azure环境的有效解决办法
- 在本地CMD里运行相关测试命令,结果和开发环境一致,完全正常
- 在Azure服务器的CMD中执行同样的测试操作,输出的结果根本没指向具体问题,完全摸不着头绪
现在我彻底卡壳了,每次在Azure环境运行邮件发送代码,要么静默失败,要么连明确的错误提示都没有,完全不知道该从哪里入手排查。有没有大佬遇到过类似的问题,给我指条明路?
内容的提问来源于stack exchange,提问作者Ori
相关产品推荐
相关产品推荐

