使用 PHPMailer 發送郵件出現詭異bug,間歇性發送失敗


場景

使用PHPMailer的SMTP發送郵件,用的是騰訊企業郵箱 smtp.exmail.qq.com
在郵箱設置里看到配置smtp方法

問題描述

  • 本地windows開發環境發送郵件100%成功
  • 遠端linux實際環境發送郵件50%成功,50%超時。顯示SMTP Error: Could not authenticate錯誤

解決過程

百度+goolge,類似的bug解決方法基本圍繞以下幾點:

  • sockets/openssl 擴展問題
  • php版本過低 fopensocket 問題
  • 用戶密碼(授權碼)問題
  • smtp 端口

看了一圈,這些問題應該會導致所有郵件失敗。跟我的詭異情況不符
后來看到一個:
phpmailer SMTP connect() failed的解決方法 -- http://www.ysweb.cn/bcl/qt/2014/1121/19.html

把 SSL/465 改成 TLS/587

抱着試試看的心態,因為QQ企業郵箱設置里沒有說 tls 的說法,

居然成功了

居然成功了

居然成功了

居然成功了
居然成功了

(生無可戀)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM