Applies ToExchange Server 2013 Enterprise Edition Exchange Server 2016 Enterprise Edition Exchange Server 2016 Standard Edition Exchange Server 2013 SP1 Exchange Server 2013 Standard Edition

徵兆

請試想下列案例:

  • 您可以使用 Microsoft Exchange Server 2016 信箱或 Exchange Server 2013 信箱傳送電子郵件訊息。

  • 電子郵件訊息的主旨行包含不支援的編碼字元,從 CP 或 MS 開始,然後以 「-」 開啟,而非數位,例如 cp-850。

在此案例中,電子郵件不會送達。 此外,您可能會收到未傳遞回報 (NDR) 訊息,如下所示:

遠端伺服器傳回 '550 5.6.0 CAT。InvalidContent.Exception: InvalidCharsetException, Character set name (cp-850) is invalid or not installed.;無法使用 InternalId InternalId、InternetMessageId.' 處理郵件內容。

因此,cp-850 字元郵件 NDR 的日誌報告電子郵件無法傳送至 Exchange 日誌目的地信箱。

原因

發生此問題的原因在於,如果主旨行包含不支援的編碼字元,Exchange Server 2016 和 Exchange Server 2013 不會處理電子郵件訊息。

解決方案

若要解決這個問題,請安裝下列更新之一:

此外,還有一項功能可讓後援使用組態檔中的預設字元集。 如果您啟用這項功能,則可傳送主旨行中有不支援編碼字元的電子郵件訊息。 若要啟用此功能,請遵循下列步驟:

  1. 設定這兩個檔案:EdgeTransport.exe.config 和 MSExchangeDelivery.exe.config。

    • 附註 根據預設,這兩個檔案位於下列資料夾中:C:\Program Files\Microsoft\Exchange Server\V14\Bin,在記事本中開啟檔案。

    • 在每一個檔案中,在 Configuration 元素底下新增下列組態元素:

      注意 元素中唯一的差異是「版本」。 例如,針對 Exchange Server 2013 累積更新 20,請使用 「Version=15.0.1366.0」,針對 Exchange Server 2016 累積更新 9 使用 [版本=15.1.1462.0]。

      <configSections>
          <section name="CTS" type="Microsoft.Exchange.Data.Internal.CtsConfigurationSection, Microsoft.Exchange.Data.Common, Version=15.0.1366.0, Culture=Neutral, PublicKeyToken=31bf3856ad364e35" />
      </configSections>
      <CTS>
          <Globalization>
            <FallbackToDefaultCharset Fallback="true"/>
            <DefaultCulture Culture="en"/>
          </Globalization>
      </CTS>

      注意事項:

      a) ConfigSections 區段必須是 .Net 強制執行之組態元素的第一個元素。 如果沒有,傳輸服務會在啟動時停止回應。

      b) Microsoft.Exchange.Data.Common 元件的版本、文化特性和公用權杖必須正確無誤。 您可以從 GAC) (Global Assembly 快取找到這些專案。

      c) FallbackToDefaultCharset 元素是用來開啟或關閉此功能。 您可以將 Fallback 屬性設為 Truefalse,藉此開啟或關閉此功能。

      d) 如果電子郵件訊息上的字元集不受支援, DefaultCUlture 元素會指定後援文化特性。 您必須將 Culture 屬性設為有效的文化特性名稱。 如果沒有,Exchange 會使用目前對話文化做為後援文化。 在範例設定中,後援文化特性設為 「en」。

  2. 儲存 EdgeTransport.exe.config 和 MSExchangeDelivery.exe.config 檔案。

  3. 重新開機傳輸服務以生效。

注意 組態檔必須仔細編輯。 診斷沒有追蹤或事件記錄檔。 如果組態檔中有錯字,此功能將無法如預期般運作。 此外,請注意,對於收到郵件時,我們不會保證郵件是否有任何內容,也不會保證收到此郵件時所造成之任何郵件的逼真度。

此外,以下是供您參考的相關連結:主旨行中包含不支援編碼字元的電子郵件訊息不會在 Exchange Server 2010 環境中傳遞

其他相關資訊

當您將此更新與更新 EdgeTransport.exe.config 檔案一起套用之後,可能會發生問題。 在安裝 Exchange Server 2016 或 Exchange Server 2013 的後續累積更新期間,當 EdgeTransport.exe.config 檔案更新為 Set-AppConfigValue 時,您可能會收到下列錯誤訊息:

Microsoft.Exchange.Data.Common.LocalizedException:Set-AppConfigValue:節點區段位於檔案 F:\Program Files\Microsoft\Exchange Server\V15\bin\EdgeTransport.exe.config 中,但並非唯一。

若要修正此問題,在執行 Exchange Server 2016 或 Exchange Server 2013 的後續累積更新之前,您應該採取下列步驟,從 EdgeTransport.exe.config 檔案中移除上述的 CTS 區段:

  • 停止所有 Exchange 服務。

  • 複製並儲存 EdgeTransport.exe.config 檔案。

  • 從 EdgeTransport.exe.config 檔案中移除上述) (下列 CTS 區段。<CTS> <種全球化> <FallbackToDefaultCharset Fallback=「true」/> <DefaultCulture Culture=「en」/> </> </CTS>

  • 儲存更新 EdgeTransport.exe.config 檔案。

  • 執行 Exchange Server 2016 或 Exchange Server 2013 的後續累積更新設定。

  • 設定完成後,請依照本文更新 EdgeTransport.exe.config 檔案。

狀態

Microsoft 已確認<適用於>一節所列的 Microsoft 產品確實有上述問題。

參考

了解 Microsoft 用來說明軟體更新的術語

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。