Desteklenmeyen bir PHP site ile Firestats kullanmak

____________________________________________________________________

FireStats istatistik eklentisi WordPress, Joomla gibi bir癟ok haz覺r CMS (Content Management System – 襤癟erik Y繹netim Sistemi) i癟in haz覺r destekle gelir ve sadece sisteme y羹klenmesi ve eklentinin etkinletirilmesi yeterlidir. Ancak standart olarak bu ekilde destei olmayan sistemlerde problem oluabilmekte. Tabi bu FireStats ile sisteminizi kullanamazs覺n覺z demek deildir sadece standart PHP site ayarlar覺na g繹re birka癟 ayar yapmal覺s覺n覺z.

FireStats’覺 bu ekilde desteklenmeyen bir PHP yaz覺l覺m覺 veya kendi yazd覺覺n覺z kodla 癟al覺t覺rmak isterseniz 繹ncelikle FireStats yaz覺l覺m覺n覺 sitenizdeki bir klas繹re y羹klemeli ve sonra buraya giderek gerekli ayarlamalar覺 yapmal覺s覺n覺z.

Normalde WordPress kurulumunda FireStats otomatik olarak bu ayar覺 yapar ama desteklenmeyen bir kodda bu ayar覺 kendiniz yapars覺n覺z. Bu ayar basit bir ayard覺r. FireStats sayfas覺na gidip 癟al覺mas覺 i癟in gerekli kullan覺c覺 ayarlar覺 vs. yapt覺ktan sonra “Sites Managemens” sekmesine gidin. Burada eer siteniz vs. g繹r羹nm羹yorsa (Desteklenmiyorsa b羹y羹k ihtimalle g繹r羹nmeyecektir) “Add a new site” balant覺s覺na t覺klay覺p, yeni site ekleme penceresini a癟覺n. Burada sitenin t羹r羹n羹, desteklenmiyorsa “Generic PHP site” se癟eneini se癟ip siteniz i癟in bir isim girin ve ID olarak da otomatik veya istediiniz bir deer girin. Daha sonra bu ayarlar覺n覺z覺 kaydedin.

Ayarlar覺n覺z覺 kaydettikten sonra yine Sites Management sekmesinde yeni kaydettiiniz sitenin bilgilerinin yan覺ndaki soru iaretine t覺klayarak a癟覺lacak yeni pencereden gerekli kodu kopyalay覺p baka bir yere yap覺t覺r覺n. Bu kod aa覺daki WordPress i癟in olsa da buna benzer bireydir:

<?php include(‘/home/siteveyahostadi/public_html/wp-content/plugins/firestats/php/db-hit.php’); fs_add_site_hit(); ?>

Daha sonra bu kodu PHP sitenizin <HEAD></HEAD> etiketleri aras覺na eklemeniz gereklidir. Kodu buraya ekledikten sonra koddaki fs_add_site_hit() metodundaki parantezlerin aras覺na sitenizin nosunu yani kurulum ileminde sitenize verilen ID deerini girin. Bu sayede yaz覺l覺m hangi siteye ziyaret癟i geldiini anlayacakt覺r. Bundan b繹yle istatistikleriniz say覺lmaya ve kaydedilmeye balanacakt覺r. Art覺k istatistiklerinizi FireStats 羹zerinden kontrol edebilirsiniz.

Eer veri taban覺 kullanan bir siteniz varsa, yukar覺daki kod aa覺dakilere veya benzeri bir hataya sebep olacakt覺r:

Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user ‘kullniciadi’ in /home/hata_veren_dosya.php on line hatan覺n_olutuu_sat覺r_say覺s覺.

Veya i癟inde 繹yle yazan bir hata da olabilir:

A link to the server could not be established in xxx.

Bu hatalar覺n sebebi istatistikleri girmek i癟in veri taban覺n覺 a癟an FireStats’覺n yukar覺daki kod kullan覺ld覺覺nda iini bitirdikten sonra veri taban覺 balant覺s覺n覺 kapatmas覺d覺r.

Bu hatay覺 engellemek i癟in koda bir ekleme yapmam覺z gerek. Sitenizin sonuna eklediiniz koddaki son fs_add_site_hit() k覺sm覺ndaki site numaran覺z覺n yan覺na kullan覺c覺 numaran覺z覺 ve balant覺y覺 kapatmamas覺 i癟in de bir false eklemelisiniz. Eer 繹zel bir kullan覺c覺 eklemediyseniz kullan覺c覺 numaras覺 yerine “null” yaz覺n. K覺saca yazman覺z gereken kod u:

fs_add_site_hit(1,null,false)

Bu kodda 1 site numaras覺, null kullan覺c覺 numaras覺 ama olmad覺覺 i癟in null ve false de veri taban覺 balant覺s覺 ile ilgili k覺s覺m. Bu kodu doru ekilde koyarsan覺z bir daha bir problem olmamas覺 gerekli.

FireStats s羹r羹m羹n羹 1.6 yaparsan覺z 繹yle bir deiiklik yapman覺z gerekli:

fs_add_site_hit(1,false)

Tabi 1.6 ile ilgilenmediim i癟in 癟al覺覺r m覺 ne olur bilmem.

Bu ilemlerden sonra FireStats yaz覺l覺m覺 ile site istatistiklerinizi g羹ncel bir ekilde takip edebilirsiniz. “Settings” sekmesinden “Compact old data” se癟eneini uygun ve ihtiyac覺n覺z olmayan bir d繹nem se癟ip “Compact” komutu ile veri taban覺n覺z覺 biraz ufaltabilir ve performans salayabilirsiniz. En iyisi bu ilemi otomatie almak. Ayr覺ca “Hits processing method” se癟eneini de “Buffer Hits” se癟erek performans salayabilirsiniz. Bu se癟im ile sitenize gelen ziyaret癟ilerin istatistikleri hemen ana veri taban覺 tablosuna girilmek yerine 癟ok daha ufak bir ge癟ici veri tablosuna al覺n覺r. Daha sonra da sistem m羹saitse yava bir ekilde bu tablodaki istatistikler ana tabloya girilir ve ge癟ici tablo boalt覺l覺r. FireStats ana tablosunun boyutu 10 MB’tan daha b羹y羹k olabiliyor, bu durumlarda her ziyaret癟i girdiinde bu tabloyu diskten okuyup ileyip tekrar diske yazmas覺 yerine, bu k羹癟羹k tampon sistemi ile ciddi bir performans salayabilir ve sunucunun ilemci kullan覺m覺n覺 azaltabilirsiniz. FireStats veri taban覺 a癟覺s覺ndan youn kullanan bir sistemdir ve bir bar覺nd覺rma irketinin sunucusundan at覺lmama sebep olmutu. Bu sebeple yukar覺daki ipu癟lar覺na 繹nem vermekte fayda var.