Smtp
sendmail 需要特別查看哪些內容才能確定遠端 MTA 是否支持 8 位 MIME 傳輸?
我正在解決一個間歇性問題,其中一些國際字元在通過 sendmail 後似乎格式不正確。
我最近看到了這篇描述
F=7
傳遞代理標誌的文章。具體來說,文章提到從 V8.7 開始,F=7 傳遞代理標誌可用於抑制某些類型的 MIME 轉換。例如,如果“EightBitMode”選項(第 1025 頁上的“EightBitMode”)設置為
p
(傳遞 8)並且如果郵件在其正文中包含 8 位 MIME 數據,則此 F=7 傳遞代理標誌將強制 sendmail 使用以下 SMTP 錯誤,並以 EX_DATAERR 退出:我的問題是:sendmail 專門尋找什麼來確定下游 MTA 是否支持 8 位 mime?作為對 a 的響應
EHLO
,下游伺服器正在做廣告:250-PIPELINING 250-SIZE 200000000 250-VRFY 250-STARTTLS 250-ENHANCEDSTATUSCODES 250 8BITMIME
請注意,它是
250 8BITMIME
而不是250-8BITMIME
(用破折號)。這是否足以讓 sendmail 認為遠端源不支持 8bitmime?
請注意,它是 250 8BITMIME 而不是 250-8BITMIME(帶有破折號)。這是否足以讓 sendmail 認為遠端源不支持 8bitmime?
不,這稱為延續,它僅表示該行是 SMTP 回复的最後一行。
通常8BITMIME應該是唯一需要表明另一端的 MTA 能夠處理 8 位消息。(這是相關 RFC6152 的外部標記。)