XML ayrıştırma hatası: xml işleme komutu harici varlığın başında değil
admin tarafından, Web Programcılığı kategorisinde yayınlandı. | Etiketler: asp, hata, php, Site haritası, SiteMap, xml, xml ayrıştırma hatası, xml işleme komutu harici varlığın başında değilSiteharitası Protokolü sayesinde bir web tasarımcısı arama motorlarını, bir web sitesindeki taranacak URLler hakkında bilgilendirebilir. Bir site haritası bir sitedeki URLleri listeleyen bir XML dosyasıdır. Bu dosya sayesinde web tasarımcıları, taranacak sayfalarının üzerinde daha fazla kontrole sahip olurlar. Arama motorlarına hangi sayfanın ne sıklıkla değiştiği, en son ne zaman güncellendiği ve sitedeki hangi sayfa diğerlerinden daha önemli, öncelikli gibi bilgileri bu dosya ile gönderebilirler. Bu yolla arama motorları web sitelerini tararken daha verimli olabilmektedirler. Site haritaları yapı itibariyle robots.txt URL hariç tutma protokolünün tamamlayıcısı olan bir URL dahil etme protokolüdür. (Wikipedia)
Site haritalarının tanımını Wikipedia‘dan aldıktan sonra, gelelim ipucumuza. Hazır içerik yönetim sistemi, blog ya da site şablonu kullanmayan ve kendi kodlamalarını yaparak içerik yönetimi gerçekleştiren kişiler, genellikle kendi site haritalarını yine kendi yazdıkları kodlarla oluşturmak isterler. Site haritası (SiteMap) mantığını anlayabilirler ama tüm kodlamayı yaptıktan sonra iş denemeye geldiğinde, üst üste hatalar almaya başlarlar. Bunlardan en dertli olanı da, başlıkta belirttiğim “XML ayrıştırma hatası: xml işleme komutu harici varlığın başında değil” hatasıdır.
Bu hata, içeriğinden de anlaşılabileceği gibi xml işleme komutu olan “<?xml version=”1.0″ encoding=”UTF-8″?>” satırının, XML sayfası işlendiğinde diğer varlıkların başında olmamasından kaynaklanıyor.
Birçok kod yazarı, bu hatayı giderebilmek için türlü yollara başvuruyor, tüm kodlamadaki “boşlukları” siliyor ama bir türlü sorunu çözemiyor. Araştırma yapıyor, herkes daha önce denenen yöntemleri öneriyor. Velhasılıkelâm sorun bir şekilde çözülüyor ama nasıl olduğu anlaşılamıyor. Daha sonraki PHP/ASP ile hazırlanan XML kodlamalarında aynı hata ile karşılaşabiliyor. Hemen ulaşılabilir bir kaynak olması ve böyle bir sorun ile karşılaşıldığında hemen çözüme ulaşılabilmesi için bu ipucunu yazma gereği duydum.
Aslında bu hatanın çözümü gayet basit.
“<?xml version=”1.0″ encoding=”UTF-8″?>” XML işleme komutunu sayfanın en başına getirdiğinizde, bu kafa karıştıran hatayı da çözmüş olacaksınız.
Resimde de gördüğünüz üzere, XML işleme komutu artık varlıkların en üstünde. Böylece hatasız bir site haritası oluşturmuş olacaksınız.
Güncelleme 1: Halen sorun yaşıyorsanız, aşağıdaki şekilde çözüme ulaşabilirsiniz:
ASP:
<% Response.Write("<?xml version=""1.0"" encoding=""UTF-8""?>"+Vbcr) %>
PHP:
<?php echo "<?xml version=""1.0"" encoding=""UTF-8""?>"?>
Sponsorlar
Kullanıcı İşlemleri
Etiketler
Bağlantılar
- Ce-Interaktif – Alışkanlık Yapan Teknoloji!
- Film Hataları – Hatasız Film Olmaz!
- Kullan-At Posta – Geçici E-posta Servisi
- Türkçe Yazılım – Bilgi Merkeziniz!
Güncel Yorumlar
- Windows’ta Klasörleri Şifrelemek için admin
- Windows’ta Klasörleri Şifrelemek için Murat
- IIS Admin Service or a service dependent on IIS Admin is not active. için walive
Güncel İçerikler
- MySQL “Data provider or other service returned an E_FAIL status” Hatası ve Çözümü
- HTTP Error 403.9 – Forbidden: Too many clients are trying to connect to the Web server
- “Error 1366: [MySQL] Incorrect string value” Hatası ve Çözümü
- Aynı Anda Birden Fazla Dosyanın Karakter Kodlamasını Değiştirmek
- SHJunction ile Sanal Klasör Eşleştirme (Mapping) – Klasör Yönlendirme











