原先主機的regedit裡的TLS1.0、TLS1.1中Server是停用的,而Client是啟用的。使用網站-忘記密碼發EMAIL(使用gmail)是可正常發EMAIL的。
今天把TLS1.0、TLS1.1中Client停用後,發現忘記密碼的發EMAIL失敗了。得到一個錯誤訊息:
用這個錯誤訊息google不到和sendEmail相關的答案,不過在類似的問題有人提到要指定TLS1.2連線,因此就增加了ServicePointManager.SecurityProtocol= (SecurityProtocolType)3072;試看看,結果就可以正常發EMAIL了。
後來測試是因為TLS1.0的關係,只要這個client不停用,是可以在不改程式的前提下發EMAIL的。
蠻意外的,沒想到程式中使用Gmail發EMAIL和主機的TLS設定也有關係。