1. 程式人生 > >阿里雲伺服器 discuz不能發郵件

阿里雲伺服器 discuz不能發郵件

阿里雲伺服器現在不能通過25埠發郵件【推薦閱讀:阿里雲伺服器不能發郵件(二)】,即不通過php函式的方式發郵件,很多人都有這個問題

今天幫一兄弟解決阿里雲伺服器discuz不能發郵件的問題,之前也有人找我幫忙解決,現在把解決思路寫出來

discuz 的smtp是通過php fsocketopen的方式發郵件的,確定一下php是否支援fsocketopen的函式,有可能php中禁用了這個函式
發郵件的程式碼在source/function/function_mail.php,比對錯誤日誌看一下發郵件的程式碼執行到哪一步出現錯誤
發郵件的錯誤日誌在data/log目錄下,比如檔名201705_SMTP.php
檢查discuz後臺的郵件配置
這裡要注意smtp配置的域名是ssl://smtp.qq.com

discuz郵件配置

如果不加ssl會出現,fsocketopen連線成功了,但是錯誤日誌裡顯示

  1. <?PHP exit;?> 2017-05-11 19:18:39 36.5.15.91 1 /admin.php?action=checktools&operation=mailcheck&frame=no smtp.qq.com:465 CONNECT -

如果還有錯誤,檢查一下錯誤日誌,比如密碼錯誤等資訊都會在日誌裡顯示