PHPMailer發信(高安全性模式 Oauth2)

之前一直說要填的坑,研究了好幾天才終於搞懂,不得不說有關的教學真的太少了(中英文都是),導致要湊出完整的流程真的挺困難的,先把觀念記錄下來,有機會再做成外掛方便大家使用 。
本篇文章參考:https://blog.hoyo.idv.tw/?p=3692撰寫
這已經是我找到相對來講最完整的教學了,也感謝這篇文章的作者讓我可以完成這部分的改寫。

 

  1. 確定 PHP 已經更新到 5.4 以上 (PHPMailer get_oauth_token.php 的需求)
  2. 下載 PHPMailer 5.2.23 (最新版)
  3. 將 PHPMailer 解壓縮在你的網站/外掛內
  4. 安裝 composer
  5. 到 PHPMailer 目錄執行 composer install
    順便先補兩個 composer require , league/oauth2-client 和 league/oauth2-google
    (這邊要注意調整資料夾權限否則無法安裝)
  6. 到 Google APIs 建立一個發信件用的專案
  7. 到「憑證」內產生「OAuth 2.0 用戶端 ID」 ,並且設定好「已授權的重新導向 URI」,請設定為你的get_oauth_token.php檔案的url
  8. 到 get_oauth_token.php 內設定好 $redirectUri(這支程式的網路位置 url) $clientId $clientSecret(google api內會給) 三個變數,並執行,會詢問帳號授權,選擇欲發信帳號後會出現 Token ,請複製起來
  9. 複製 examples/gmail_xoauth.phps 到 你要用來發信的程式 做測試
    (記得檔案要改成php)
  10. 修改  你要用來發信的程式
    oauthUserEmail (你要用來發信的gmail)
    oauthClientId  (google發信專案的 oauthClientId )
    oauthClientSecret  (google發信專案的 oauthClientSecret )
    oauthRefreshToken (詢問授權後獲得的 Token )
    ,以及寄信人、收信人後即可執行發信測試

發送mail的核心程式,如果上面測試有出現錯誤請檢查一下檔案內發信的程式碼

如果有說明不夠清楚的地方歡迎留言反映我再做調整,感謝各位 。

展躍網頁設計從事 WordPress架設網站 已經多年,並且服務過各大知名品牌與上市櫃企業,如果你想了解到更多相關的網頁設計知識與趨勢,歡迎隨時關注我們「展躍有限公司」,如果你有想要我們協助你 架設網站 或是提供你更完整的設計服務也歡迎致電或來信詢問!
客服專線:03-2728415 / 客服信箱:service@raise-up.com.tw / LINE ID:@obn8515v