Her e-postanin icindeki uc tarih
Bir IMAP sunucusunda saklanan her e-posta en az uc ayri tarih degeri tasiyor. Bu tarihlerin nasil calistigini ve e-posta istemcilerinin hangisini goruntulemeyi sectigini anlamak, migrasyonun tarihleri neden bozduğunu kavramanin anahtari. Bu makale, IMAP tarih sisteminin IT yoneticileri ve migrasyon sonrasi tarih sorunlarinin temel nedenini anlamak isteyenler icin derinlemesine teknik bir analiz.
1. RFC 2822 "Date" basligi
RFC 2822'de tanimlanan "Date" basligi, mesaj yazilip gonderildiğinde gonderenin e-posta istemcisi tarafindan ayarlaniyor. Bu baslik mesaj govdesinin kendisinin bir parcasidir, mesajla birlikte hareket eder ve teslim yolundaki e-posta sunuculari tarafindan asla degistirilmez.
Date: Mon, 15 Jan 2024 09:32:17 +0100
2. IMAP INTERNALDATE
RFC 3501'de (IMAP4rev1 protokolu) tanimlanan INTERNALDATE, mesajin sunucuya teslim edildiği tarih ve saati temsil eden sunucu tarafinda bir meta veri degeri. Date basliginin aksine, INTERNALDATE e-posta mesajinin kendisinin bir parcasi degil. IMAP sunucusu tarafindan ayri olarak meta veri olarak saklanir.
3. "Received" baslik zinciri
Bir e-posta her e-posta sunucusundan gectiginde, o sunucu mesajin basina bir "Received" basligi ekler. Bu, e-postanin gonderenden aliciya yolculugunu kaydeden bir Received baslik zinciri olusturur. En yenisi (ustte) mesaji son islenen sunucuyu, en eskisi (altta) ilkini gosteriyor.
E-posta istemcileri hangi tarihi goruntulemeyi nasil seciyor
Outlook (Masaustu, Web, Mobil)
Microsoft Outlook, gelen kutusunda goruntulenen "Alindi" tarihini belirlemek icin INTERNALDATE ve en son "Received" basliginin bir kombinasyonunu kullaniyor. Pratikte Outlook "Alindi" sutunu icin en son Received basliginin zaman damgasini onceliklendirme egiliminde. Outlook varsayilan olarak "Alindi" sutununa gore siraladigindan, kullanicilarin ilk gordugu sey Received basligi zaman damgasi.
Apple Mail
macOS ve iOS'taki Apple Mail, tarihi goruntulmek icin temel olarak IMAP INTERNALDATE'i kullaniyor. Daha fazla bilgi icin Apple Mail: migrasyon sonrasi yanlis tarih makalesine bakin.
Thunderbird
Mozilla Thunderbird en fazla esnekligi sunuyor. Hem "Tarih" (Date basligindan) hem de "Alindi" (Received basliklarindan) goruntüleyebilir. Detaylar icin Thunderbird: migrasyon sonrasi yanlis tarih makalesine bakin.
Gmail web arayuzu
Gmail'in web istemcisi birincil tarih gorunumu icin Date basligini kullaniyor. Bu, Gmail web'in migrasyondan sonra bile genellikle dogru tarihleri gosterdiği anlamina gelir. Ama sunucudaki IMAP INTERNALDATE yine de yanlis, bu da bu Gmail hesabina baglanan her IMAP istemcisini etkiliyor.
IMAP APPEND tarihleri neden bozuyor
Migrasyon sirasinda ne oluyor
Bir migrasyon araci bir e-postayi Sunucu A'dan Sunucu B'ye tasıdığında, arac IMAP araciligiyla Sunucu A'ya baglanir ve ham mesaji indirir, ardindan Sunucu B'ye baglanir ve eklemek icin APPEND komutunu kullanir. Ekleme sirasinda Sunucu B gelen mesaji isler ve guncel zaman damgasiyla, yani migrasyon tarihiyle yeni bir Received basligi ekler.
Sonuc: kirletilmis bir baslik zinciri
Migrasyondan sonra e-postanin Received basliklari soyle gorunuyor:
Received: from migration-tool; Fri, 11 Apr 2025 14:22:08 +0000
Received: from mx.recipient.com; Mon, 15 Jan 2024 09:32:22 +0000
Date: Mon, 15 Jan 2024 09:32:17 +0100
Migrasyon aracinin Received basligi artik en ustteki giris. Goruntuleme tarihini belirlemek icin en son Received basligini kullanan herhangi bir e-posta istemcisi (ozellikle Outlook) "15 Ocak 2024" yerine "11 Nisan 2025" gosterecek.
Iyi INTERNALDATE yonetimi bile bunu onlemiyor
Bazi migrasyon araclari APPEND sirasinda INTERNALDATE'i dogru ayarliyor. Ornegin imapsync kaynak sunucudaki INTERNALDATE'i acikca koruyor. Ama Received basligi migrasyon araci tarafindan degil hedef sunucu tarafindan ekleniyor. Migrasyon aracinin bu davranis uzerinde hicbir kontrolu yok.
Kisacasi, pratik olarak ne yapilabilir?
Duzeltme: dogru tarihleri geri yukleme
Iyi haber su ki dogru tarih bilgisi hala her e-postanin icinde mevcut. Orijinal Date basligi saglam. Orijinal Received basliklari saglam. Sorun, kirletici bir basliğin onlarin ustunde oturmasi.
Redate.io'nun tescilli duzeltme motoru etkilenen her e-postanin tam baslik zincirini, tam olarak hangi basliklarin duzeltme gerektirdigini tanimlamak icin yuzlerce bilinen migrasyon araci imzasi uzerinde imza eslemesi uygulayarak analiz eder. Cok asamali analiz hatti basit yaklasimlari basarisiz kilan sinir durumlarini yonetiyor: S/MIME imzali mesajlar, PGP sifreli icerik, multipart/alternative yapilar, Content-Transfer-Encoding sorunlari, ASCII disii basliklar (RFC 2047) ve bozuk MIME sinirlari.
Kendi basiniza bir betik yazarak bu duzeltmeyi yapmaya calisabilir misiniz? Teknik olarak evet. Ama "e-postalarin %95'inde calisiyor" ile "tek bir tanesini bile bozmadan %100'unde calisiyor" arasindaki fark aylarlik gelistirme suresini temsil ediyor.
Posta kutunuzda kac e-postanin yanlis tarihlere sahip oldugunu ogrenmek mi istiyorsunuz? Redate.io ile ucretsiz bir analiz baslatin, etkilenen e-postalarin anlik sayimini alin, odeme gerekmiyor.