我與一位執行 Exchange SMTP 伺服器的客戶遇到了令人沮喪的問題。
我有一個用 .net 編寫的電子郵件元件,並且我專門使用 Mono DLL 來確保電子郵件元件為其發送的每條訊息發送 ELO 和 QUIT 命令。
我發送的每封郵件都不會超過 10MB(包括附件),該值低於客戶端交換配置中設定的會話大小值。
但問題仍然存在。有什麼想法去哪裡看嗎?
答案1
編碼為 Base64 時,任何檔案附件都會大幅成長,因此請確保所有附件的檔案大小與最大會話大小之間至少有 30% 的空間。
維基百科上的base64:
因此,符合 MIME 標準的 Base64 編碼的二進位資料的實際長度通常約為原始資料長度的 137%
它也可能值得運行線鯊在伺服器或用戶端上準確檢查內容長度並確保它實際上正在執行您告訴它的操作並斷開連接
答案2
您在一次會話中發送了多少封電子郵件?您是否會為每封郵件斷開連線並重新連線?我聽說如果一個連線中有太多訊息就會發生這種情況。
郵件伺服器上的電子郵件大小限制設定為多少?配額大小? ETC。
Exchange 伺服器日誌上的錯誤訊息到底說了什麼(如果有的話)?