UTF-8 BOM Nedir?

UTF-8 BOM, oluşması muhtemelen sorunlar düşünüldüğünde çok ciddi bir mesele olarak ele alınması gerektiği söylenebilir. Web-sitenizdeki tüm karakterler bozulabilir, hatta sitenin görüntülenmesi dahi engellenebili UTF-8 BOM sorunu dolayısıyla. Bu yazıda UTF-8, BOM sembolü ve yol açması muhtemel sorunlarla ilgili bilgiler vereceğiz.

BOM Nedir?

BOM, kısaca bir simgedir ve dosyanın en başında bulunur. Peki "BOM kelimesinin anlamı nedir?" diye soracak olursanız; dosyanın UTF-8 olduğunu ifade etmeye yarar. BOM simgesi işe ""şeklindedir.

UTF-8 BOM Sorunları

Bu kod bazı durumlarda sorun çıkarabilmektedir. Mesela header kısmının başına geldiğinde, header öncesine eklendiğinden ötürü “Warning: Cannot modify header information – headers already sent by..." ile başlayan bir hata alınabilmekte.

Bir diğer UFT-8 BOM hatası ise bazı tarayıcılarda satır problemi yaşanmasıdır. Örneğin Internet Explorer tarayıcısında sayfanın en üstünde BOM simgesi görünmez fakat bir satırlık boşluk bulunur. Diğer bir tarayıcı olan Chrome kullanıcıları da BOM simgesi yerinde en üst satırda bir adet "-" (tire) sembolü görür.

Bir diğer problem de sayfanın tamamen karakter hataları ile görünmesidir. Türkçe karakterlerin yerine tuhaf simgeler gelebilir bu sorundan ötürü. Fakat aslında hiç uğraşmaya gerek yok. Son derece zahmetsiz bir biçimde UTF-8 BOM sorunlarından kurtulmak mümkün.

Tüm bu UTF-8 problemleri ile ilgili olarak uzun uğraşlar veren ve saatlerini, günlerini harcayan webmasterlar var. Bir arkadaşımın başına gelen benzer durum sonrası çokça uğraştığını gördüğümden bu yazıyı yazma gereği duydum. Çünkü UTF-8 BOM sorunları aslında çözülmesi son derece basit problemlerdir.

UTF-8 BOM Çözümü

Metin editörünüzdeki Tercihler yahut Seçenekler kısmından BOM olmadan UTF-8 seçeneğini seçtiğiniz taktirde probleminiz çözülmüş olacak. Kodlarınız UTF-8 olarak kalacak fakat BOM simgesi olmayacak...

Windows kullanıcıları için önereceğim metin düzenleme editötü olan NotePad++ ile bu işlemi gerçekleştirmek için:

Biçim >> Kodla (UTF-8 without BOM)

seçeneğini,

Benim gibi Ubuntu kullananlar için önereceğim metin editörü olan Geany kullanıcıları ise:

Döküman >> BOM Unicode Yaz

seçeneği yardımıyla bu işlemi gerçekleştirebilirler.