我正在嘗試設定 PHPMailer,以便我們的一位客戶能夠從自己的帳戶中自動產生電子郵件。我登入了他們的Of fice 365帳戶,發現PHPMailer所需的設定是:
Host: smtp.off ice365.com Port: 587 Auth: tls
我已將這些設定套用至 PHPMailer,但沒有發送電子郵件(我呼叫的函數適用於我們自己的郵件,該郵件是從外部伺服器(不是服務網頁的伺服器)發送的)。
"host" => "smtp.of fice365.com", "port" => 587, "auth" => true, "secure" => "tls", "username" => "clientemail@off ice365.com", "password" => "clientpass", "to" => "myemail", "from" => "clientemail@of fice365.com", "fromname" => "clientname", "subject" => $subject, "body" => $body, "altbody" => $body, "message" => "", "debug" => false
有誰知道PHPMailer透過smtp.offi ce365.com寄送需要什麼設定?
更新:2022 年 5 月
所以我對這個問題苦苦掙扎。對於具有 Exchange Online 和 Microsoft 管理中心存取權限的企業帳戶,我可以提供此問題的答案。
TLDR:前往管理中心並選擇您要傳送郵件的使用者。然後在設置“經過身份驗證的 SMTP”之後查看“電子郵件”和“電子郵件應用程式”後的設置,只需啟用它即可。
仍然無法工作?我已經為您提供了幫助,這就是我如何讓它完全發揮作用。
如果您使用 MFA,請確保使用 https://stackoverflow.com/ 中提到的應用程式密碼a/61359150/14148981
#運行腳本
我希望這對某人有幫助。我花了很長時間才找到這個選項。
取得應用程式密碼和驗證的所有步驟摘要:
@nitin 的程式碼對我來說不起作用,因為它在 SMTPSecure 參數中缺少「tls」。
這是一個工作版本。我還添加了兩行註解掉的行,您可以在出現問題時使用它們。