Whoops

WordPress 為什麼老是寄不到信?先看懂那個隱形的預設機制

靜下來想,不少人都遇過這種狀況:客戶在你的聯絡表單留了訊息,自己的信箱卻一封都沒收到;會員點了「忘記密碼」,那封重設連結的信像是石沉大海;WooCommerce 訂單明明成立,客戶卻打來問「我的訂單確認信在哪裡」。

問題通常不出在你的網站本身,源頭出在 WordPress 寄信的那個預設機制。先把答案講在前面:WordPress 內建的 wp_mail() 函式,預設走 PHP 的 mail(),再交給伺服器上的本機郵件程式(常見是 sendmail 或 Postfix)把信送出去。換句話說,這就像你把信寫好,隨手交給路邊一個陌生人幫你投遞。伺服器有沒有真的送、送到哪、會不會被對方當成垃圾信,WordPress 一概不管。

更麻煩的是,共用主機的 IP 信譽普遍不好。同一個 IP 上擠了成百上千個網站,只要其中一個被檢舉濫發,整個 IP 寄出去的信都會被 Gmail、Outlook 拉黑。你的信可能根本沒進對方的垃圾信箱,而是在傳輸過程就被對方伺服器靜默丟棄,你這邊顯示「寄信成功」,對方卻從頭到尾沒收到。這種沉默失敗最可怕,因為你完全不會被通知,要等到客戶主動反映,你才知道原來信早就掉了好一陣子。

表單顯示送出成功,卻收不到通知信,是 WordPress 常見的維運問題。預設本機發信缺少完整驗證可能是原因之一,但也要檢查表單收件人、主機郵件紀錄、DNS 驗證、退信與垃圾郵件過濾,不能先假設都是 wp_mail() 造成。表單端的通知信、自動回信與後台留存怎麼設,用 Elementor Pro 的站長可以搭配Elementor Pro 表單從通知信到對帳的設定教學一起看。用 Contact Form 7 的站長,則可以對照Contact Form 7 的郵件設定,確認收件人欄位與信件範本都正常。

要把寄信從「路邊丟」升級成「掛號投遞」,你需要的就是 SMTP。接下來會把整件事一次弄懂:為什麼預設會壞、SMTP 改變了什麼、怎麼選供應商、如何用 WP Mail SMTP 接上 Gmail OAuth,以及設定完成後仍可能踩到哪些地雷。如果你同時在盤點整站該裝哪些外掛,可以對照 WordPress 必裝外掛清單

SMTP 到底改變了什麼?把寄信從黑箱變成可追蹤

SMTP(Simple Mail Transfer Protocol,簡單郵件傳輸協定)不是什麼新技術,它就是網際網路寄信的標準語言。真正關鍵的,在於「你用誰的 SMTP 伺服器來寄」。

當你用 WordPress 預設的本機發信,等於是讓你那台共用主機直接對著 Gmail 的伺服器喊話。Gmail 看到的發信 IP 信譽差、沒有正向的發信紀錄、也沒有任何身份驗證標記,於是二話不說就把它丟進垃圾筒,或直接在連線階段就拒收。對 Gmail 來說,一個它完全不認識的 IP 突然寄信過來,而且沒有任何可以查證身份的痕跡,把它當成可疑信件處理是再合理不過的防衛機制。

設定發信外掛後,WordPress 可透過已驗證的 SMTP 伺服器,或 Gmail、Mailgun、SendGrid 等服務的 API/OAuth mailer 送信。這能提供較清楚的驗證與錯誤紀錄,但是否進入收件匣仍取決於 SPF、DKIM、DMARC、寄件網域信譽、信件內容與收件方政策。

換句話說,接上 SMTP 主要解決三件事:

  • 身份驗證:你用合法帳號登入後投遞,每一封信都帶有可追溯的來源紀錄,收信方查得到你是誰。
  • 投遞基礎:專業服務通常有較完整的驗證、退信處理與信譽管理,但共用 IP 的表現仍會受方案與其他寄件者影響。
  • 可追蹤性:部分服務提供接受、退信與投訴紀錄;開信數據受隱私保護與圖片載入影響,不能當成實際閱讀的精準證明。

很多人以為「裝了 SMTP 外掛=從此信一定進收件匣」,這是過度樂觀。SMTP 解決的是「能不能被正常投遞」這一關,至於「會不會被判定為垃圾信」,還牽涉到網域驗證(SPF、DKIM、DMARC)和寄件人地址的一致性,這部分我會在後面的進階段落專門講。但可以肯定的是,沒接 SMTP 之前,後面那些都免談。基礎建設沒打好,再多的垃圾信過濾優化都只是空中樓閣。

先決定你的發信供應商:四條路線的取捨

這一步是大多數教學草草帶過、卻最常讓人卡關的地方。選錯供應商,輕則多花冤枉錢,重則設定到一半才發現每天寄信量被卡死、或在旺季突然被鎖定。我把實務上會遇到的四條路線整理成這張對照表,你可以依自己的網站類型與發信量挑選。

發信路線 適合誰 每日量級 主要成本 隱藏成本與地雷
Gmail 個人帳號 SMTP 個人部落格、小型作品集、一天寄不到幾十封的站 約 500 封/天 免費 發信量、用途與自動化限制需依 Google 當前政策;超量可能暫停寄信
Google Workspace(Gmail API) 有自有網域的小型公司、正式商務網站 約 2000 封/天 Workspace 月費 需在 Google Cloud 建立 OAuth 應用程式,初次設定較繁瑣
專業交易型 SMTP(Mailgun、SendGrid、Postmark) 電商、會員制網站、需大量自動化發信 數千到數百萬封 按量計費 要設定網域驗證(DNS),但長期最穩、投遞率最高
主機商內建 SMTP(如部分代管主機) 已使用特定代管服務、不想再管第三方的站長 視方案而定 含在主機費裡 一旦你把網站搬到別家主機,這條路線就斷了,要重接

小型網站若已訂閱 Google Workspace,可評估 Gmail API 與 OAuth;它不是免費服務,也有帳號發信限制。電商或會員站若通知量大,交易型郵件服務通常提供較完整的退信、投訴與事件紀錄。選擇時要看寄信量、關鍵程度、資料處理條款與維護能力。

Gmail 與 Google Workspace 都有 發信限制,且會因帳號類型、試用狀態與收件人數而異。接近限制前就應評估交易型服務。Mailgun 與 SendGrid 的方案與試用額度可能調整,請直接核對 MailgunTwilio SendGrid 的當前價格頁。

會需要斤斤計較發信量與投遞率,不是沒有原因的。電子郵件到今天仍是轉換率最穩定的數位行銷管道之一,開信率與點擊率長期維持在相對高檔(見 HubSpot 2025 年的 Email Marketing Benchmarks),而且依 2023 年的 State of Marketing Report2025 年的版本,在全球行銷人的策略清單裡持續排在前面。換句話說,寄信這件事牽動的是你的名單品質與營收,它直接連動你能觸及多少客戶、多少訂單能順利完成,值得你認真把地基打好。用「能動就好」的心態隨便交差,早晚會在某個關鍵時刻翻車。

這裡談的 SMTP,處理的是「交易郵件」(transactional email),也就是 WordPress 站台寄出的訂單、密碼重設與表單通知。定期電子報與行銷郵件則應使用電子報平台,例如用MC4WP 把訂閱名單接上 Mailchimp,或參考WordPress 電子報外掛比較。兩類郵件的名單管理、送達要求與設定方式不同,不宜混用。

WP Mail SMTP 安裝與 Gmail OAuth 設定實戰

這裡以 Gmail OAuth 為主軸。Google 已停用過去的「低安全性應用程式」存取,OAuth 2.0 是較建議的方式;符合條件的帳號也可能使用應用程式密碼連接 SMTP,但可用性受兩步驟驗證、管理員政策與帳號類型限制。

第一步:安裝 WP Mail SMTP 外掛

到 WordPress 後臺的「外掛 → 安裝外掛」,搜尋 WP Mail SMTP,找到官方版本後安裝並啟用。如果你對流程還不熟,可以先看WordPress 外掛安裝的三種方法。各 mailer 是否包含在免費版或付費版會隨版本調整,應以安裝畫面與官方方案表為準。

第二步:在後臺選擇 Gmail 發信器

啟用後,進入 WP Mail SMTP「設定」,在 Mailer 選「Gmail」走 OAuth 2.0。Other SMTP 是供任何相容 SMTP 的服務手動填主機、連接埠與憑證;Mailgun、SendGrid 等若有專用 mailer,通常應優先依官方文件使用,功能與方案依當前版本為準。

第三步:到 Google Cloud 建立專案與 OAuth 憑證

這一步是整套設定裡最繁瑣、也最容易出錯的地方,但只要照著走一次就會通。流程的核心是建立一個 OAuth 2.0 用戶端,讓 WP Mail SMTP 能夠以你的名義存取 Gmail 寄信功能,完整的 OAuth 設定觀念可以對照 Google Cloud 的 OAuth 2.0 官方文件。具體步驟如下:

  1. 登入 Google Cloud Console,建立一個新專案(名稱隨意,例如 wpmailsmtp-你的站名)。
  2. 到「API 與服務 → 程式庫」,啟用 Gmail API。這一步沒做的話,後面授權會直接失敗,是最常見的漏網之魚。
  3. 到「OAuth 同意畫面」設定應用程式資訊與發布狀態。若停留在測試模式,測試使用者與權杖期限會受限制;正式長期使用時,依 WP Mail SMTP 最新文件與 Google Cloud 畫面完成發布設定。
  4. 到「憑證 → 建立憑證 → OAuth 用戶端 ID」,應用程式類型選「網路應用程式」,在「已授權的重新導向 URI」貼上外掛後臺顯示的完整網址。標準設定常見為 https://connect.wpmailsmtp.com/google/,但必須以你目前畫面提供的值為準,逐字相同。
  5. 建立完成後,記下 用戶端 ID用戶端密鑰,回到 WordPress 後臺貼入對應欄位。

第四步:授權連結並完成設定

把用戶端 ID 與密鑰貼回 WP Mail SMTP 後,點「儲存設定」,接著找到「Allow plugin to send emails using your Google account」這個按鈕,點下去會跳出 Google 授權頁面,登入你要用來發信的 Google 帳號並同意授權。授權成功後,外掛會顯示已連結的帳號 email,到這裡 SMTP 通道就正式打通了。如果授權頁面報錯「redirect_uri_mismatch」,回頭檢查 Google Cloud 裡的重新導向 URI 是不是跟外掛顯示的那串一字不差,包含結尾的斜線與查詢參數都要對上。

底下的「寄件人」(From Email)與「寄件人名稱」(From Name)也要設好。From Email 建議填你這個授權的 Google 帳號本身的地址,否則 Google 會把寄件人強制覆寫回授權帳號,你的客戶收到的信寄件人會跟你想像的不一樣。把「Force From Email」勾起來,可以避免其他外掛(例如表單或 WooCommerce)把寄件人改成別的地址而導致驗證失敗。完整的欄位對照與最新選項,建議搭配 WP Mail SMTP 官方文件一起看,遇到版本更新時對照最準。

設定完成後:寄一封測試信並看懂回應

很多人設定完就以為大功告成,直接收工。千萬不要。一定要在外掛的「Email Test」分頁寄一封測試信,而且要睜大眼睛看它回報了什麼。測試信不是走個過場的儀式,它是你確認整條發信鏈路通不通的唯一客觀證據。

測試時可查看外掛提供的 Debug Events 或錯誤輸出;完整 Email Logs 是否可用取決於目前方案。寄出後可能遇到三種結果:

  • 綠色成功訊息:信已成功交給 SMTP 伺服器。注意,這只代表「外掛把信交出去了」,不等於收件人真的收到。要去你填的測試信箱實際確認,而且要看是進收件匣還是垃圾信箱,兩者的意義完全不同。
  • 紅色錯誤訊息:最常見的是 OAuth 授權過期、用戶端密鑰打錯、或 Gmail API 沒啟用。詳細 log 通常會直接告訴你哪一個環節掛了,照著修即可。
  • 顯示成功但對方沒收到:這是最棘手的狀況,代表問題出在網域驗證或信件被判定為垃圾信,與 SMTP 通道無關。這就要進到下一節的進階排查。

測試信的真正價值在於「蒐集信件到底怎麼寄的證據」,讓你未來除錯時有跡可循。把 log 留下來,之後真的被客戶反映收不到信時,你才有東西可以對照,而不會陷入「我這邊顯示正常、但你那邊說沒收到」的各說各話。建議你每次重大設定變更後(換供應商、改 OAuth、加 DNS 紀錄)都重寄一封測試信,把成功的那一封 log 截圖存檔,當作這次設定的基準。

還有一個小技巧:測試信不要只寄到一個信箱。同時寄到 Gmail、Outlook、Yahoo 各一封,因為不同收信服務對發信信譽的判斷標準不同,某一家收得到不代表另一家也收得到。如果你有三種信箱的測試管道,能更早抓出「只有特定收信方把你的信當垃圾」這類局部問題。

進階眉角:From 地址、Return-Path,以及為什麼信還是被退

若測試顯示成功但信件進垃圾匣或未收到,應檢查寄件人與驗證網域是否一致、SPF/DKIM/DMARC、退信紀錄、內容與服務商信譽。Return-Path 的設定方式依 mailer 而異,不能只靠三項固定清單判定原因。

寄件人地址一致性

收信方會檢查信件標頭裡的 From 地址,跟你實際發信的那個網域是不是對得起來。舉例來說,如果你用 noreply@你的網域.tw 當寄件人,但實際是透過 Gmail 帳號寄出,Gmail 的伺服器會在背景把寄件人覆寫成它自己的地址,這時候 From 與實際發信網域不一致,通過率就會被打折。解法有兩個:要嘛把 From 設成你授權的那個 Gmail 地址,要嘛改用支援網域驗證的交易型服務(Mailgun、SendGrid),讓你可以用 你的網域 的地址寄信,同時通過完整的 SPF 與 DKIM 驗證。

如果你想在程式層強制統一寄件人,可以在佈景主題的 functions.php 裡用 WordPress 的 wp_mail_fromwp_mail_from_name 兩個 filter 鉤點來覆寫。這招在確保所有外掛寄出的信都長同一張臉時很好用,例如強制所有通知信的寄件人名稱都是你的品牌名,避免出現外掛預設的 WordPress 或網站名稱這類看起來很不專業的寄件人。但要記得修改後要清快取,並重新寄一封測試信確認覆寫有生效。建議透過子佈景主題(child theme)來加這段程式碼,避免主佈景主題更新時被覆蓋掉。

Return-Path:被低估的退信地址

Return-Path 是信件的「退信回收地址」,當收信方拒收或信件無法投遞時,退信通知會寄到這裡。WordPress 預設會把 Return-Path 設成伺服器的本機地址(通常是 apache@主機名 之類的亂碼),這意味著一旦發生退信,你根本收不到通知,問題會在檯面下默默發酵,等你發現時可能已經掉了一大串訂單信。WP Mail SMTP 有一個選項叫「Set the return-path to match the From Email」,把它勾起來,讓退信地址與寄件人一致,你才有機會在第一時間發現投遞失敗並補救。

網域驗證三件組:SPF、DKIM、DMARC

這三個 DNS 紀錄是決定你的信會不會被當垃圾信的最終關鍵,但它們不在 WordPress 裡設,而是要到你網域的 DNS 設定裡新增。我特別把它們獨立講,因為這是「為什麼接了正規服務還是會掉信」最常被看漏的一層。

  • SPF(Sender Policy Framework):告訴收信方「這些伺服器有權用我的網域寄信」。你用了哪家發信服務,就把那家提供的 SPF 紀錄加進你的 DNS。SPF 紀錄本質上是一份授權清單,列舉了哪些 IP 或服務可以代表你的網域發信,收信方收到信後會對照這份清單決定信件是否可信。
  • DKIM(DomainKeys Identified Mail):在信件加上一組加密簽章,讓收信方驗證信件內容沒有被竄改、確實來自你的網域。多數交易型服務會給你一組 DKIM 紀錄讓你加到 DNS。DKIM 與 SPF 互補:SPF 管的是「誰有權寄」,DKIM 管的是「信有沒有被動過手腳」。
  • DMARC:告訴收信方「當 SPF 或 DKIM 驗證失敗時,該怎麼處理」(隔離、拒絕、或放行),並把驗證報告定期寄給你,讓你掌握有多少冒名信件正在流竄。

本質上來說 SPF 與 DKIM 是「證明你是你」的身份證,DMARC 則是「別人冒用你時該怎麼辦」的處置規則。三個都設齊,再加上寄件人地址與發信網域一致(這叫 identifier alignment),你的信才有機會穩穩落在收件匣,避免被默默吞掉。建議先用 p=none 的監控模式跑一陣子,觀察報告裡有沒有異常的冒名來源,確認沒問題再逐步把政策調嚴到 quarantinereject

網站若仍使用 HTTP,應一併處理 HTTPS,保護登入、表單與訪客連線;HTTPS 是輕量排名訊號,但不是 OAuth 成功的保證。WP Mail SMTP 標準 Gmail 流程常使用外部 HTTPS 重新導向 URI,實際要求仍以外掛與 Google Cloud 當前文件為準。相關觀念可參考SSL 憑證完整指南HTTP 換 HTTPS 攻略

常見錯誤訊息診斷:看到這些字代表什麼

設定過程中你幾乎一定會撞上幾個錯誤訊息,先認識它們長什麼樣、各自指向哪個環節,遇到時就不會慌張亂試。我把實務上最常出現的幾個整理出來,讓你下次看到時可以直接對號入座。

錯誤訊息關鍵字 通常代表 處理方向
SMTP connect() failed 連不上 SMTP 伺服器,多半是連接埠被主機商封鎖(常見 25、465、587) 改用 587 連接埠,或聯絡主機商確認是否開放外寄 SMTP
redirect_uri_mismatch Google Cloud 裡的重新導向 URI 與外掛顯示的不一致 逐一比對 URI 字串,包含結尾斜線與查詢參數都要一模一樣
invalid_grant OAuth 授權權杖過期或被撤銷 回到外掛重新點授權按鈕,重新取得一組有效的權杖
Authentication failed 帳號密碼或用戶端密鑰打錯 重新核對憑證欄位,注意前後空白與全形半形差異
每日限額相關錯誤 當日發信量超過 Gmail 或服務商的上限 等待限額重置,或升級到更高量級的方案
顯示成功但對方沒收到 網域驗證缺失或信件被判為垃圾 補齊 SPF、DKIM、DMARC,並檢查寄件人地址一致性

其中「SMTP connect() failed」特別值得留意,因為它常常不是你的設定錯,而是主機商基於安全理由封鎖了外寄 SMTP 連線。這種情況在便宜的共用主機上特別常見,遇到時先別急著換外掛,問一下主機商是否開放 587 連接埠,往往就能解開。如果你的主機環境對 SMTP 很不友善,那也是考慮換到對 WordPress 與發信更友善的主機類型的時機點。

還有一種很隱晦的失敗值得提醒:有些站長的 Google 帳號開啟了兩步驟驗證,這時若走傳統的 SMTP 密碼登入會被擋下,因為 Google 不再接受單純的帳號密碼。這正是 OAuth 路線的另一個優勢:它繞過了兩步驟驗證的相容性問題,只要授權一次就能持續運作。少數舊式 SMTP 外掛會教你改用「應用程式密碼」這條折衷路線(在 Google 帳號裡產生一組專供 SMTP 使用的密碼),這招確實能用,但管理上比 OAuth 麻煩,也更容易在帳號被收回或密碼輪換時整組壞掉,所以我還是建議能走 OAuth 就走 OAuth。

WooCommerce 與會員系統:哪些信最不能掉

如果你的網站是電商或會員制,發信的優先順序就非常重要,因為不同的信掉了一封,後果嚴重程度天差地遠。我把實務上最不能掉的信件類型依嚴重度排一下,幫助你在資源有限時決定先顧哪一端。

交易郵件可依購買流程與服務風險排定優先順序:付款失敗或待付款通知會影響顧客能否完成交易,訂單確認與付款通知則讓顧客核對訂單狀態;密碼重設信關係到帳號存取,出貨與物流通知可減少查件需求。預約制網站也應測試線上預約系統的確認與提醒信,避免顧客收不到時程或重複操作。

理解了這個優先順序,你就會明白為什麼我前面一再強調電商站不該用免費的 Gmail 個人帳號頂著。免費方案在量級沒超時看起來沒問題,可是一旦遇到促銷檔期、節慶旺季,瞬間湧入的大量訂單信很容易把每日額度吃光,剩下的信全部排隊等待、甚至直接被丟棄,而這往往發生在你最不能掉信的時候。把發信交給交易型服務,等於給你的營收關鍵環節買一份保險,它平時不顯眼,卻能在旺季幫你擋下那些會讓你失眠的危機。

對會員制網站來說,還有一個容易被放過的細節:很多會員外掛會在註冊成功、帳號啟用、續約到期前各寄一封信,這些信累積起來的量其實相當可觀。如果你用免費方案,建議定期回去看看每日發信統計,別等到會員反映「我沒收到續約提醒」才驚覺額度早就爆了。養成每個月看一次投遞報表的習慣,是讓發信系統長期穩定運作的基本功。

長期監控:讓發信穩定度變得看得見

設定完 SMTP 並不代表從此高枕無憂,發信信譽是一個會隨時間漂移的指標,你的網域今天信譽很好,不代表半年後還是一樣。養成定期監控的習慣,才能在問題釀成大禍前先接收到訊號。

監控可從 DMARC 報表與交易型服務後台開始。Google Postmaster Tools 適合有足夠 Gmail 寄信量、能產生可用資料的網域;低量網站可能看不到完整指標。服務商的「delivered」通常只代表收件伺服器接受,不等於進入收件匣;開信率也受隱私保護與圖片載入影響。

把這些資料放在一起,可以看出伺服器接受率、退信、投訴與驗證異常,但通常仍無法精準知道有多少信進入收件匣或被真人讀到。若接受率下降或退信上升,就回頭檢查 SPF、DKIM、DMARC、內容與服務商事件紀錄。

安全與維護:密碼、權杖,以及主機搬家的注意事項

SMTP 設定牽涉到帳號密碼或 OAuth 權杖這類敏感憑證,這也代表它需要被當成網站安全的一環來對待,別設完就拋諸腦後。憑證外洩的後果可大可小,輕者被拿來盜發垃圾信害你網域信譽受損,重者可能成為攻擊者滲透你帳號的跳板。

維護時要限制可存取郵件設定的管理員,使用供應商建議的 OAuth 或專用憑證,並定期撤銷不再使用的權杖與應用程式密碼。憑證實際如何儲存取決於外掛與設定,不能一概聲稱是明文。變更前可記錄原設定並備份資料庫,備份工具可參考UpdraftPlus 備份教學

把 WordPress 搬到新主機後,不論使用 Gmail OAuth 或交易型服務,都要重寄測試信,必要時重新授權,並檢查防火牆、DNS 與回呼設定。若原本使用舊主機內建 SMTP,搬家後通常還要改接新的發信管道。

這裡順帶釐清「垃圾信」這個詞的兩種意思。你網站「寄出去」的信被對方判為垃圾,屬於發信信譽問題,是 SMTP 設定要處理的範圍;但你的網站「收進來」的留言被垃圾灌爆,那屬於另一個防護問題,要靠的是像Akismet 這類反垃圾留言外掛。SMTP 解決的是出站方向,Akismet 解決的是進站方向,兩者方向相反,職責也完全不同,別搞混。一個站長常常需要兩者都顧:出站要穩、進站要乾淨,網站的溝通品質才會到位。

一張表搞懂:免費方案什麼時候夠用,什麼時候該升級

用一張表把「要不要花錢升級交易型發信」這個決策收斂一下。判斷的關鍵不只在目前寄信量,也在漏掉一封重要郵件會造成多大損失。

你的情境 建議方案 判斷依據
個人作品集、部落格,一天寄不到 10 封信 Gmail 個人帳號 SMTP(OAuth) 量小、非商業關鍵,免費額度綽綽有餘
小型公司網站、有聯絡表單與會員功能 Google Workspace + Gmail API 用自有網域寄信較專業,2000 封/天夠用
WooCommerce 電商、訂單信與通知信量大 Mailgun 或 SendGrid 交易型服務 訂單信是營收關鍵,投遞穩定度不能賭
會員制網站、大量密碼重設與系統通知 交易型服務+完整 SPF/DKIM/DMARC 量與可信度都要求,網域驗證必須到位
剛起步、預算極有限、願意接受偶爾掉信 先用 Gmail SMTP 頂著,量起來再升級 過渡期方案,但要記得設退信監控

若你正在架WooCommerce 購物網站,可從一開始評估交易型郵件服務。訂單確認、付款通知與出貨提醒都很關鍵,除了方案費用,也要比較退信處理、事件紀錄、資料地區與技術支援,避免顧客因收不到通知而改向其他商家。

收尾行動清單:今天就動手把發信弄穩

看完原理與設定,真正能讓你的網站不再掉信的,是把這幾個動作依序做完。我把它整理成一張可以直接照著做的清單,從現況診斷到長期維護一次包辦。

  1. 確認現況:到 WP Mail SMTP(或你目前的外掛)寄一封測試信到一個外部信箱,看是否真的進收件匣。很多人到這一步才發現自己的網站其實一直在掉信。
  2. 選定發信供應商:對照前面的取捨表,依你的網站類型與每日發信量決定。小型站用 Gmail OAuth,電商或會員站直接上交易型服務。
  3. 設定 OAuth 或 SMTP 憑證:走 Gmail 路線就把 Google Cloud 的 OAuth 應用程式建好,記得啟用 Gmail API、把回呼網址填對、把自己加入測試使用者。
  4. 統一寄件人並勾選 Return-Path:把 From Email 設成授權帳號地址,開啟 Force From,並讓 return-path 與 From 一致,確保退信你收得到。
  5. 補齊網域驗證:在 DNS 加上 SPF、DKIM、DMARC 三組紀錄,先用監控模式跑一陣子再逐步收緊政策,這一步是免費方案能否穩定進收件匣的分水嶺。
  6. 設定監控與備份:啟用詳細 log、裝好備份機制,並在搬家或改設定前先備份一次,給自己一條退路,也讓未來除錯有依據。

完成設定後,保留一封成功測試的標頭與事件紀錄,並定期檢查退信、投訴、OAuth 狀態與 DNS 驗證。沒有任何外掛能保證每封信都進收件匣,但這套紀錄能讓問題發生時有依據可查。

常見問題

測試信成功了,為什麼客戶還是收不到?
測試信通常寄到管理員信箱,而管理員信箱常與寄件網域落在同一個 Google 或 Microsoft 生態,收件端對「自家人」寬容度高,產生自己測都成功、客戶端卻漏信的假象。要戳破假象,測試信須寄到與網域完全無關的陌生信箱,建議同時覆蓋 Gmail 與 Outlook,連續三天不同時段各寄一封,且主旨不要寫 test。
DMARC 從 none 升到 reject,中間該停多久?
沒有標準答案。none 階段至少收滿一到兩個 aggregate 報告週期(通常一週),確認報告裡沒有合法信件被 SPF 或 DKIM 判 fail,才能往 quarantine 推進;quarantine 階段再觀察一週。容易踩的坑是 DKIM 對齊(alignment)問題,直接從 none 跳 reject 風險最高,分段推進是為了讓對齊問題提前曝光。
多站共用一個 Mailgun 帳號,會不會互相拖累?
帳號本身可以共用,但寄件網域要不要共用才是關鍵。若多站都從同一網域發信,信譽會綁在一起。較穩的做法是每站用獨立子網域,各掛一組 DKIM 選擇器,信譽各自累積;帳號層級的額度雖然共用,但網域層級的信譽是隔離的。
出現 SMTP connect() failed,是設定錯了嗎?
不一定。常見原因包括 SMTP 主機名或連接埠錯誤、加密方式不相容、帳密或 OAuth 失效、TLS 憑證問題,以及主機或防火牆封鎖外寄連線。先查看外掛偵錯記錄並核對服務商文件,再詢問主機商是否允許所需連接埠;不要只靠反覆更換連接埠猜測。
為什麼寄件人地址可能被 Gmail 改掉?
當 From 地址不是 Gmail 帳戶已驗證的地址或別名時,Google 可能改用授權帳戶,或讓郵件顯示代寄資訊。可把 From 設為已驗證地址並依外掛需要強制套用,或改用支援自有網域驗證的交易郵件服務;無論哪種方式,都應設定 SPF、DKIM,並依服務商文件評估 DMARC。

操作步驟

  1. 備份網站:安裝任何外掛前先用 UpdraftPlus 等備份外掛把網站備份一份。
  2. 抓出根因:到 WP Mail SMTP 的「電子郵件測試」寄一封測試信,看錯誤訊息指向哪一層(外掛、通道、驗證)。
  3. 安裝外掛並選擇 Mailer:依發信量挑 Gmail(小量)或 Mailgun、SendGrid(中大量),照四步流程完成 OAuth 串接。
  4. 補上 DNS 三項驗證:到網域註冊商後台新增 SPF、DKIM、DMARC 三筆 TXT 記錄。
  5. 嚴格測試:把測試信寄到與網域完全無關的 Gmail、Outlook、Yahoo 各一封。
  6. 長期觀察:DMARC 先設 p=none 收一週 aggregate 報告,確認沒誤殺合法信件,再逐步推進到 quarantine、reject。

主題聚落|WordPress 外掛生態系 看「WordPress 與網站架設」中樞 →

相關文章

褚崇名(Sliven) 創辦人・巫普斯科技有限公司

長期投入技術 SEO、GEO/AEO 與 AI 搜尋實務。本站文章以可驗證資料、公開來源與實作觀察整理而成。

完整作者介紹LinkedInGitHubX

想把這篇的方法用在自己的站上?

SEO 健檢、GEO/AEO 引用優化、網頁設計諮詢——把文章裡的方法落地到你的網站。