Belirtiler
Aşağıdaki senaryoyu ele alalım:
- E-posta iletisini göndermek için bir Microsoft Exchange ServerMicrosoft Exchange Server 2016 posta kutusu veya Exchange ServerExchange Server 2013 posta kutusunu kullanırsınız.
- E-posta iletisinin konu satırı, CP veya MS'den başlayıp cp-850 gibi sayı yerine "-" ile devam eden, desteklenmeyen kodlanmış karakterler içeriyor.
Bu senaryoda, e-posta teslim edilmez. Ayrıca, aşağıdakine benzer bir teslim edilemedi raporu (NDR) iletisi alabilirsiniz:
Not
Uzak Sunucu '550 5.6.0 CAT döndürdü. InvalidContent.Exception: InvalidCharsetException, Karakter kümesi adı (cp-850) geçersiz veya yüklü değil.; InternalId InternalId, InternetMessageId olan iletinin içeriği işlenemiyor.'
Bu nedenle, cp-850 karakterli postalar için NDR'nin günlük raporu e-postaları, Exchange günlüğü hedef posta kutularına teslim edilemez.
Neden
Bu sorunun nedeni Exchange Server 2016 ve Exchange Server 2013'ün konu satırında desteklenmeyen kodlanmış karakterler içeren e-posta iletilerini işlememesidir.
Çözüm
Bu sorunu çözmek için aşağıdaki güncelleştirmelerden birini yükleyin:
- For Exchange ServerExchange Server 2016, Cumulative Update 9 veya Exchange ServerExchange Server 2016 için daha sonraki bir toplu güncellemeyi yükleyin.
- For Exchange ServerExchange Server 2013, Cumulative Update 20 veya Exchange ServerExchange Server 2013 için daha sonraki bir toplu güncellemeyi yükleyin.
Buna ek olarak, yapılandırma dosyasındaki varsayılan karakter kümesini kullanmak için geri dönüşü etkinleştirmek için bir özellik mevcuttur. Bu özelliği etkinleştirirseniz, konu satırında desteklenmeyen kodlanmış karakterler bulunan e-posta iletileri teslim edilebilir. Bu özelliği etkinleştirmek için şu adımları izleyin:
Şu iki dosyayı yapılandırın: EdgeTransport.exe.config ve MSExchangeDelivery.exe.config.
Notlar Varsayılan olarak, bu iki dosya şu klasörde bulunur: C:\Program FilesFiles\Microsoft\Exchange ServerExchange Server\V14\Bin, dosyaları Not Defteri'nde açın.
Her dosyada, yapılandırma öğesinin altına aşağıdaki yapılandırma öğelerini ekleyin:
Notlar Öğedeki tek fark "Sürüm"dür. Örneğin, Exchange Server 2013 Toplu Güncelleştirme 20 için "Version=15.0.1366.0", Exchange Server 2016 Toplu Güncelleştirme 9 için "Version=15.1.1462.0" kullanın.
<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>Notlar:
a) configSections bölümü, .NET tarafından zorunlu kılınan yapılandırma öğesinin ilk öğesi olmalıdır. Aksi takdirde, Aktarım hizmeti başlatıldığında yanıt vermeyi durdurur.
b) Microsoft.Exchange.Data.Common derlemesinin sürümü, kültürü ve ortak belirteci doğru olmalıdır. Bunları Genel Derleme Önbelleği'nden (GAC) bulabilirsiniz.
c) FallbackToDefaultCharset öğesi bu özelliği açmak veya kapatmak için kullanılır. Geri dönüş özniteliğini true veya false olarak ayarlayarak bu özelliği açabilir veya kapatabilirsiniz.
d) DefaultCUlture öğesi, e-posta iletisindeki karakter kümesi desteklenmiyorsa bir geri dönüş kültürü belirtmektir. Kültür özniteliğini geçerli bir kültür adına ayarlamanız gerekir. Aksi takdirde Exchange, mevcut iş parçacığının kültürünü yedek kültür olarak kullanır. Örnek yapılandırmada, geri dönüş kültürü "en" olarak ayarlanır.
EdgeTransport.exe.config ve MSExchangeDelivery.exe.config dosyalarını kaydedin.
Uygulanması için Aktarım hizmetini yeniden başlatın.
Notlar Yapılandırma dosyası dikkatli bir şekilde düzenlenmelidir. Tanılama için izleme veya olay günlüğü yok. Yapılandırma dosyasında bir yazım hatası varsa özellik beklendiği gibi çalışmaz. Buna ek olarak, desteklenmeyen karakter kümesi içeren bir ileti için, alındığında iletiyle ilgili hiçbir şeyi garanti etmeyeceğimizi ve alındığında bu iletinin neden olduğu iletilerin aslına uygunluğunu garanti etmeyeceğimizi unutmayın.
Ayrıca, başvurmanız için ilgili bir bağlantı aşağıdadır: Konu satırında desteklenmeyen kodlanmış karakterler içeren bir e-posta iletisi Exchange ServerExchange Server 2010 ortamında teslim edilmez.
Daha fazla bilgi
EdgeTransport.exe.config dosyasını güncelleştirerek bu güncelleştirmeyi uyguladıktan sonra bir sorun oluşabilir. EdgeTransport.exe.config dosyası, Exchange Server 2016 veya Exchange Server 2013 için daha sonraki bir toplu güncelleştirmenin yüklenmesi sırasında Set-AppConfigValue ile güncelleştirilirken, aşağıdaki hata iletisini alabilirsiniz:
Microsoft.Exchange.Data.Common.LocalizedException: Set-AppConfigValue: Düğüm bölümü F:\Program Files\Microsoft\Exchange Server\V15\bin\EdgeTransport.exe.config dosyasında bulunmuştur, ancak benzersiz değildir.
Sorunu çözmek için, Exchange Server 2016 veya Exchange Server 2013 için daha sonraki bir toplu güncelleştirmeyi çalıştırmadan önce, yukarıda listelenen CTS bölümünü EdgeTransport.exe.config dosyasından kaldırmak için aşağıdaki adımları uygulamanız gerekir:
- Tüm Exchange hizmetlerini durdurun.
- EdgeTransport.exe.config dosyasını kopyalayıp kaydedin.
- Aşağıdaki CTS bölümünü (yukarıda listelendiği gibi) EdgeTransport.exe.config dosyasından kaldırın.
<CTS>
<Genelleştirme><FallbackToDefaultCharset Fallback="true"/>
<DefaultCulture Culture="tr"/>
</Globalization>
</CTS>
- Güncelleştirilmiş EdgeTransport.exe.config dosyasını kaydedin.
- Daha sonraki bir toplu güncelleştirmenin Exchange ServerExchange Server 2016 veya Exchange ServerExchange Server 2013 kurulumunu çalıştırın.
- Kurulum tamamlanır tamamlanmaz EdgeTransport.exe.config dosyasını güncelleştirmek için bu makaleyi izleyin.
Durum
Microsoft bunun, "Şunlar için geçerlidir" bölümünde listelenen Microsoft ürünlerinde sorun olduğunu doğrulamıştır.
Başvurular
Microsoft'un yazılım güncelleştirmelerini tanımlamak için kullandığı terminoloji hakkında bilgi edinin.