今天一位客戶遇到一個很特殊的問題,我們部署在他的阿里云服務器上的PHP網站無法發送郵件。經過反復測試后我們終于找到問題的原因:原來阿里云方面為了防治垃圾郵件,屏蔽了25端口。更改為其他端口后恢復正常。不過這個新的端口,不同的郵箱可能有不同的端口號,以下以QQ郵箱為例,來看下應該如何解決!
首先,我們想到的是函數問題,但是這個屬于我們售后技術工作范圍,這里不做深究,今天遇到的問題也不是因為函數引起的。我們到QQ郵箱官方的幫助文檔中,查詢到是否有新的端口號,經過搜索,我們發現,QQ郵箱除了25端口以外,還支持465端口和587端口。接下來,我們只需要將網站中郵件配置對應的端口號進行修改即可。如果這時郵件發送還是不成功,請注意將SMTP服務器地址前添加ssl://協議頭。如下圖所示:
其他供應商的郵箱,也可以根據這個解決方案處理。另外需要注意的是,QQ郵箱如果開啟了授權碼,那么,在網站中配置郵箱發送時請優先使用授權碼,沒有開啟,則使用郵箱密碼。如果您的郵箱發送依然存在問題,請及時聯系創絡科技,我們將為您分析郵箱發送日志,以便更快捷的找到問題的所在。