WordPress Sitemap XML Hatası ve Çözümü

Merhabalar,

Aslında bu tarz çözüm yazıları yazmak pek aklımda yok ancak, interneti altüst edip de bir sorunu çözemeyince ekleme yapmadan edemiyorum.

Yoast SEO gibi SEO eklentilerinin oluşturduğu site haritalarında bu soruna rast geliniyor. Yakın zamanda ben de bu sorunu yaşadım, sitemap sayfanızda aşağıdaki gibi bir sorun oluşuyor ve haliyle site haritanız kullanılmaz hale geliyor.

This page contains the following errors :

error on line 2 at column 6: XML declaration allowed only at the start of the document

Below is a rendering of the page up to the first error.

Birçok sitede bu sorunun kodlarda oluşan karakter hataları veya boşluklardan kaynaklandığı söylenilmiş. Ancak birçok dosyayı göz yordamıyla analiz edip bu hataları bulmak ne yazık ki mümkün değil.

Çözüm

Bu noktada bu soruna sebep olabilecek eklenti/temayı bulmamız gerekiyor. Eğer ki aktif olarak kullandığınız temada site haritanız daha önce çalışıyorsa, doğrudan eklentilere bakabilirsiniz. Yoast’ın çözüm sayfasında zaten bu konuya değinilmiş. Son zamanlarda yüklediğiniz, soruna sebep olduğunu düşündüğünüz eklentileri devre dışı bırakarak sitemap sayfanıza yeniden ulaşmayı deneyin.

Benim sitemde soruna sebep olan eklenti Wp Optimize isimli eklenti idi. Eğer WordPress sisteminizde bu eklenti yüklü ise doğrudan devre dışı bırakarak sorunu çözebilirsiniz.

Kolay gelsin.

Kendinize özel mail adresinizi oluşturun isminiz@soyisminiz.com

Merhaba arkadaşlar,

Hali hazırdaki mail servislerinde (hotmail, gmail vb.) kullanmak isteyeceğiniz bir mail adresine ulaşmak oldukça zor olabilir. isminizsoyisminiz_351992@hotmail.com gibi bir mail adresini kullanmak sizin için can sıkıcı bir durum olduğu kadar size mail yollayacak kişiler için de can sıkıcı olabilir.

Bu yazıda Yandex Kurumlar için Mail hizmetini kullanarak tamamen ücretsiz olarak (elbette ki alan adı ve barındırma için belli bir ücret ödeyeceğiz, bu rakam ortalama 50 tl civarıdır, bir web sitesi oluşturmayacaksanız 25 tl) adımız isim@alanadimiz.com gibi mail adresleri açacağız. Daha önce bu hizmeti Google da veriyordu ancak yakın bir zamanda ücretli bir hizmet haline getirilmiş. Ancak Yandex üzerinde bu hizmet tamamen ücretsiz ve neredeyse sınırsız (1000 mail adresine kadar.) Eğer ki soyisminiz.com gibi bir alan adı müsaitse, kendiniz ve yakınlarınıza isim@soyisminiz.com şeklinde mail adresleri verebilirsiniz.

Ayrıca eğer bir blog yazıyorsanız alan adınız üzerine bir blog servisi de kurabilirsiniz.

İhtiyacımız olanlar

  • Bir alan adı (domain)
  • Bu alan adına bağlı bir barındırma hizmeti (hosting)
  • Herhangi bir Yandex hesabı
  • Bir FTP erişim uygulaması (Filezilla, CoreFTP vb.)

Alan adını (domain) ekleme

Öncelikle Yandex Kurumlar sayfasına girip alan adımızı ekleyelim.

https://kurum.yandex.com.tr/domains_add/ adresinden alan adımızı ekleyeceğiz. Alan adımızı eklemek için herhangi bir Yandex hesabı ile oturum açmamız gerekiyor.

 

Alan adımızı Yandex’e ekliyoruz.

Alan adımızı ekledikten sonra, sayfada alan adının bizim olduğunu teyit etmek için çeşitli yöntemler gösterilecek. Eğer ki alan adınızı kullanmak, bir web sayfası oluşturmak istemiyorsanız, doğrudan Yandex’in size verdiği Nameserver’ları, alan adını aldığınız şirket üzerinden değiştirerek doğrulama yapabilirsiniz. Bu en kolay yöntem, ancak bir web sitesi oluşturacaksanız, ya da hali hazırda oluşturmuşsanız, adımları takip edin.

Doğrulama yöntemini seçme

Ben bir .html dosyası oluşturup onu ana dizine eklemek yolunu tercih ediyorum. Yandex bize şöyle bir bilgi veriyor;

Sitenizin kök dizinine abcd1234.html adlı dosyayı ve xxyyzz1234 metnini ekleyin.

Boş bir Not defteri sayfası açıp xxyyzz1234 metnini yapıştırıyoruz, ve Dosyayı Farklı Kaydet (Save as) seçeneği ile dosyamızın ismini abcd1234.html olarak kaydediyoruz. Ve bir FTP uygulaması ile (veya kimi alan sağlayıcıların Web Uploader’lerini kullanarak) abcd1234.html dosyamızı ana dizine ( www veya public_html klasörü içerisine) ekliyoruz. Ve Yandex Kurumlar’daki sayfamızda “Alan adının sahibini kontrol et butonuna bastığımızda, ikinci adıma geçiyoruz.

MX kayıtları ekleme

Bu adımda size alan sağlayan şirketin size verdiği panele erişip, alan adınızın alan ile ilişkili kısmını düzenlemeniz gerekiyor. Yandex’in bize verdiği bilgiler şöyle;

Alt alan adı —@

Kayıt türü —MX

Veriler —mx.yandex.net. (net’den sonraki noktaya dikkat)

Öncelik —10

MX kayıtlarını alan sağlayıcım DigitalOcean’da düzenliyorum.

Gereken ayarları girip, MX ayarlarını kontrol et butonuna bastığımızda yeni bir mail adresi oluşturabiliriz. Gerekli kısımları doldurup mail hesabımızı böylece oluşturabiliriz.

SPF kayıtlarını oluşturmak

Mail adresimizi oluşturduk, ama bu mail adresinden yollanacak olan maillerin Önemsiz/Spam/Junk kutularına düşmelerini engellemek için tıpkı MX kaydı oluşturduğumuz gibi bir de SPF kaydı oluşturmamız gerekiyor. Yandex’in verdiği bilgi şöyle; (Şu linkten teyit ediniz https://yandex.com.tr/support/kurum/records.xml )

Alt alan adı: @

Kayıt türü: TXT

Adres: v=spf1 redirect=_spf.yandex.net

SPF kaydını da oluşturduğumuza göre, hesabımızı test edebiliriz.


Her şey yolunda gözüküyor! Kolay gelsin.

DigitalOcean ve VestaCP Panel Kurulumu


Merhaba sevgili dostlar,

Bu yazımda son zamanlarda oldukça popüler olan DigitalOcean üzerinde bir sunucu oluşturmayı, bu sunucu üzerinde (Ubuntu 16.04.1) bir panel (VestaCp) kurulumunu, ve daha sonra bu panel üzerinden alan adımı entegre edip, barındırmayı anlatacağım. Umarım aydınlatıcı bir yazı olur, sorular için yorumlar kısmını kullanabilirsiniz.

DigitalOcean üyesi değilseniz, burayı tıklayarak referansımla üye olabilirsiniz, böylece her ikimiz de 10 dolar değerinde kredi kazanabiliriz.

İlk adım olarak DigitalOcean üyesi olduğunuzu varsayarak, üstteki “Create Droplet” kısmına tıklayarak bir sunucu için ilk adımımızı atıyoruz. Dilediğiniz distribution (bu kısımda ben Ubuntu seçiyorum.) plan ve datacenter bölgesini seçtikten sonra Create butonuna basıyoruz. Sunucunuz yaklaşık 1 dakika içinde hazır olacak ve mail adresinize sunucu IP’si, kullanıcı adınız ve şifreniz iletilecek.

Başlamadan önce domain servis sağlayıcı şirketinizden, alan adınızı DigitalOcean nameserver’larına yönlendirin; ben Godaddy kullanıyorum. Birçok sağlayıcıda işlem aynıdır. Nameserver kısmına,

ns1.digitalocean.com

ns2.digitalocean.com

ns3.digitalocean.com

yazıyoruz. Şimdi alan adımızı DigitalOcean’daki sunucumuza ekleyelim.
Sunucumuzun yan kısmında bulunan Manage’ye tıklayıp, ardından Add Domain’e tıklayarak kendi alan adımızı ekliyoruz. Ve, bir A kaydı oluşturarak, doğrudan alan adınızı sunucu IP’nize bağlıyorsunuz. Bunu hostname kısmına @ value kısmında da sunucunuzu seçerek yapabilirsiniz.

 

 

Şimdi kuracağımız VestaCP paneli için de bir A değeri oluşturalım, hostname kısmı için panel , value kısmı için de yine sunucumuzu seçelim. Şimdi bir de CNAME kaydı oluşturalım, hostname kısmına www value kısmına ise siteadresiniz.net yazalım. Böylece kayıtları tamamladık.

 

Ve şimdi başlıyoruz! Hadi biraz terminal görelim. Bu noktada, Linux kullanıcıları doğrudan Terminal üzerinden işlemleri gerçekleştirebilirler. Windows kullanıcıları ise Putty gibi bir client’e ihtiyaç duyacaklar.
Terminal ekranımıza öncelikle şu komutu yazarak, uzaktaki sunucumuza bağlanıyoruz,

ssh -l kullaniciadi sunucuipadresi

genellikle şu halde

ssh -l root 111.11.111.11 gibi.

Sunucumuza bağlandıktan sonra sunucu doğrudan şifremizi değiştirmemizi isteyecektir. Öncelikle varolan şifrenizi girin. Bu noktada yapıştırabilir, yahut klavyenizden yazabilirsiniz. Ekranda bir imleç ya da harf görmeyeceksiniz. Yeni şifrenizi iki kez yazacağınız için bu durum bir sıkıntı değil.

Şifremizi değiştirdiğimize göre panel kurulumuna hazırız, öncelikle,

curl -O http://vestacp.com/pub/vst-install.sh

komutunu verelim. Ardından da,

bash vst-install.sh -f

komutunu verip. E-mail adresimizi, FQDN hostname kısmına panel.siteadresimiz.com yazıp VestaCP kurulumunu başlatalım.

Kurulum yaklaşık 10 dakika sürüyor. Kurulum sonucunda ise terminal ekranında kurulumun tamamlandığına dair yazıyı, panel adresimizi, VestaCP kullanıcı adı ve şifremizi göreceğiz. Terminali kapatmadan önce şifrenizi bir dosyaya kopyalamanız iyi olur. Giriş yapar yapmaz da değiştirebilirsiniz.

panel.siteadresimiz.com:8083 adresinden VestaCp paneline erişebiliriz. Erişimden hemen sonra, Users başlığından admin şifremizi ve default nameserver’larımızı değiştirebiliriz. Şimdi sıra geldi, bir alan adı ekleyip, alan tahsis etmeye. Web başlığı altındaki yeşil artı butonuyla alan adımızı ekleyebiliriz. Alan adımızı, IP adresimizi (sunucu IP’sini seçin), Advanced Options kısmından da ftp kullanıcı adını ve şifresini tanımlayıp Add butonu ile alan adımızı tanımlıyoruz.

Bu noktada bir FTP uygulamasına ihtiyacımız var, ben Filezilla kullanıyorum. Filezilla’yı açıp sunucu IP’miz, tanımladığımız ftp kullanıcı adı olan admin_okul ve 123456 şifremiz ile bağlanıyoruz.

Ve hazırız! Bir index.html dosyası upload edip, test edelim.

Her şey yolunda. Bu günlük bu kadar, kolay gelsin!

Dipnot: Bu sayfadaki verileri kullanılan sunucu, imha edildi.

Yeni başlayanlar için Arduino ve ilk sorular

Arduno Nedir?

Arduino açık kaynak kodlu, kolay kullanımlı bir yazılım-donanım geliştirme platformudur. Arduino kartları ile bir veri kaynağından (sensör) gelen veriyi işleyip herhangi bir çıkış kaynağına yönlendirebilirsiniz. Bir örnek ile ifade edecek olursak, bir sıcaklık sensöründen (DHT11, DHT22 veya başa bir sıcaklık sensörü olabilir bu sensör) gelen veriyi kullanarak bir relay modül yardımı ile bir cihazı belirlediğiniz bir sıcaklık aralığında çalışmasını sağlayabilirsiniz. Elbette ki bu verdiğim örnek çok basit bir biçimde Arduino’nuz ile neler yapabileceğinizi ifade etmek için söylediğim çok küçük bir proje. Elbette ki Arduino’nuz ile çok daha karmaşık, hayal gücünüzün sınırlarını zorlayan projelere imza atabilirsiniz.

Neden Arduino?

Arduino dünya üzerinde yüzbinlerce geliştiricinin kullandığı, ucuz (modellerine bağlı olarak çeşitli versiyonlarını 2 dolara dahi bulmak mümkün) anlaşılması basit, hatta basit projelerde karmaşık elektronik bilgisine ihtiyaç duymadan çeşitli projeler yapabileceğiniz, programlamak için ciddi ekstra donanımlara ihtiyaç duymayacağınız bir ekipmandır.

Yukarıda bahsettiğim detayların aslında belli anlamları var, Arduino’nun çok ciddi bir kitle tarafından kullanılıyor olması birçok konuda kaynak sıkıntısı çekmeyeceğiniz, projelerinizi dilerseniz hazır kodlarla kolayca hazırlayabileceğiniz, bu yolla elektronik bileşenleri ve programlamanın temel yapılarını kolayca anlayabileceğiniz, ve programlamak için de bir USB kablosuna ve Arduino IDE yazılımına (Windows, Linux ve Mac platformlarında kullanılabilir)İ ihtiyaç duyacağınız anlamına geliyor.

Hangi Arduino?

  

Soldan sağa, Arduino Mini, Arduino Nano, Arduino Uno ve Arduino Mega.

Öncelikle bu soruya tek bir cevap vermek pek mümkün değil. Bu soruya “Nasıl bir proje için?” sorusunun cevabını aradıktan sonra cevap vermek daha mantıklı olur sanıyorum. Yapmayı planladığınız projenin yapısı (kullanacağınız kasa, büyüklük, kullanılacak giriş-çıkış pinlerinin sayısı, kullanacağınız yazılımın boyutu vs.) kullanacağınız Arduino kartını belirleyecektir. Örneğin küçük bir alana sığdırmanız gereken basit bir projede Arduino Nano ya da Micro kullanabilirsiniz, ya da daha fazla giriş-çıkış pini kullanacaksanız seçiminiz Arduino Mega olabilir. Ama temel anlamda başlangıç sürecinde veya projelerinizi test ederken Arduino Uno ihtiyaçlarınızı karşılayacaktır.

Klon” olarak tabir edilen ve aslında Arduino tarafından üretilmemiş olan kartları kullanabilir miyiz, avantajları dezavantajları nelerdir?

MicroUSB kablo ile programlanan, Arduino klonları Robotdyn Nano ve Uno

Elbette ki geliştireceğimiz projelerde bu tip kartlar kullanılabilir, bu noktada “klon” kartların kullandıkları çipler Arduino ile aynıdır, yalnızca kimi klonlar oldukça düşük kalitede PCB’lerde basılı halde olabilirler. Bu durum tamamen nasıl bir “klon” olduğuna bağlı sanıyorum. Ben birçok projemde RobotDyn şirketinin Nano ve Uno modellerini kullandım, oldukça kaliteli olduklarını söyleyebilirim. Ve bu bahsettiğim RobotDyn kartlar MicroUSB kablo ile programlanabiliyorlar, bu durumun kabloya erişim açısından ciddi avantaj olduğunu söyleyebiliriz. Kısacası Arduino üretimi bir kart almak zorunda değilsiniz hatta kendi Arduino’nuzu kendiniz dahi yapabilirsiniz. (Bkz: Paperduino) Arduino kartların devre şemaları açık kaynak çerçevesinde Arduino tarafından paylaşılmıştır. https://www.arduino.cc/en/uploads/Main/Arduino_Uno_Rev3-schematic.pdf linkinden Arduino Uno’nun devre şemasını inceleyebilirsiniz.

Arduino kartımı aldım, başka nelere ihtiyacım olacak?

Çeşitli jumper kablolar, projenizi şekillendirme aşamasında test yapabileceğiniz ya da, projenizi üzerinde kuracağınız bredboard, çeşitli değerlerde dirençler, ledler, ve projenize bağlı olarak sensörler ilk etapta ihtiyacınız olabilecek materyaller. Dilerseniz “starter kit” olarak tabir edilen başlangıç kitlerinden de alabilirsiniz, ihtiyacınız olabilecek tüm materyalleri tek kutuda edinmiş olursunuz böylece.

Bilgisayarınıza da Arduino IDE yazılımını kurduysanız, her şey hazır demektir. Kolay gelsin!