[Laravel 8.x] 設定透過 Gmail 發信

文章更新啦,以前設定低安全性的方法現在不能用了,Google 在 2022/05/30 起不再支援。不過新的方式也不難,Laravel .env 和原來的設定相比也只需要修改密碼設定即可。

一、Google 帳號開啟「兩步驟驗證」

登入 Google 並進入「管理你的 Google 帳戶」 點選「安全性→兩步驟驗證」 點「開始使用」 確認電話號碼無誤,選擇透過「傳送簡訊」取得驗證碼,然後「下一步」 輸入驗證碼,點「下一步」 點「啟用」

二、設定「應用程式密碼」

點選 Google 帳戶中的「安全性→兩步驟驗證→應用程式密碼」
如果找不到,可以回「安全性」並在上面的搜尋框輸入「應用程式密碼」試試看。
應用程式選取「郵件」,裝置選擇「其他(自訂名稱)」
裝置自訂名稱可以方便我們識別是給哪個應用程式使用的。 輸入裝置名稱,並點「產生」 系統會產生一組 16 個字的密碼,請立刻複製下來,一旦點「完成」關閉此視窗,就再也看不到這組密碼了

三、修改 .env 設定

參考下圖修改 .env 的設定:

四、以下已棄用

1、修改 .env 設定

首先我們先改一下 .env 的設定: 這時候直接讓系統發信,會出現以下錯誤訊息
依照錯誤訊息提供的網址 https://support.google.com/mail/?p=BadCredentials 通常可以找到問題的解決方法。

2、開啟「低安全性應用程式存取權」

會錯誤因為被 Google 阻擋的關係,我們也會在信箱收到「重大安全性快訊」的信件,點選「查看活動」 點選「有印象,是我本人」 確認登入者是本人之後會出現以下畫面,跟你說明為什麼會被封鎖,我們點選「瞭解詳情」 會開啟一個說明頁,有興趣的可以看一下,點開「如果您的帳戶開啟了「低安全性應用程式存取權」」,點選裡面的「低安全性應用程式存取權」的連結 我們要開啟「低安全性應用程式存取權」
這時我們在讓系統重新發信,就可以正確收到囉~

3、更新

如果以上步驟都做完還是不行的話,到「Gmail 說明 - 透過其他電子郵件平台查看 Gmail 」(https://support.google.com/mail/answer/7126229),裡面有一個「授權存取您的 Google 帳戶」的連結。 點擊開啟後,會看到以下畫面 點繼續 這樣就可以測試看看能不能用囉。

留言