正經學徒,佛系記錄,不搞事情
本來今天高高興興,你為什麼要報這樣的錯
狀況
本地springboot項目整了一下使用 com.sun.mail
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mail</artifactId>
</dependency>
來發送郵件的服務,在本地做好如下配置
spring:
mail:
#伺服器位址
host: smtp.qq.com
#發送的郵箱賬号
username: [email protected]
#授權碼
password: xxxx
default-encoding: UTF-8
properties:
mail:
debug: true
port: 25
具體代碼網上一堆一堆的,随便找了一個測試了一下,用起來也賊像我兄弟順溜, 正高興的打包成jar部署上伺服器,結果問題來了,伺服器上郵件死活發送不出去,各種嘗試之下,終于發現了問題所在
解決
道聽途說的解釋如下:伺服器上由于安全政策,不允許使用smtp協定的25端口,是以需要改成經過ssl加密的smtps協定的465端口,配置修改如下,這下順暢了,不知你們是否遇到這樣的問題
spring:
mail:
#伺服器位址
host: smtp.qq.com
#發送的郵箱賬号
username: [email protected]
#授權碼
password: xxxx
default-encoding: UTF-8
properties:
mail:
debug: true
smtp:
socketFactory:
class: javax.net.ssl.SSLSocketFactory
port: 465