Siteground.com Hosting İncelemesi

Birkaç gün önce meşhur phpclasses‘ın hosting tavsileri dikkatimi çekti. Buradan görebileceğiniz gibi oldukça cazip özelliklerde hosting’ler bulmak mümkün. Çoğunun arasında fazla fark olmamasına rağmen tercihimi SiteGround‘dan yana kullandım. SiteGround’ın aylık $2.95 olan sınırsız disk alanı ve bandwidth‘e sahip paketinden satınaldım. Kayıt olup ödemeyi tamamladıktan hemen sonra cpanel bilgilerinizi adresinize gönderiyor. Reverse IP Lookup ile gördüğüm kadarıyla firma şu sıralar yeni bir sunucusunu devreye almış ve üzerinde barındırılan domain sayısı oldukça az. Datacenter’ı USA’da olan SiteGround‘ın Türkiye’den ping ortalaması 40ms civarlarında.

Web hosting

Okumaya devam et “Siteground.com Hosting İncelemesi”

PHP: Aslında CGI Antremanı Yapmalıyız

LKD‘nin Linux-programlama listesindeNeden Cannot modify header information – headers already sent by” hatası alıyorum sorulduktan sonra, Sn. Barış Çuhadır’ın cevaben verdiği bilgiler işin özünü yansıtması açısından çok güzeldi. Paylaşmak istedim.

CGI programları istenilen programlama dili ile yazılabilir. Örneğin ben şu anda C ile kendi cgi kütüphanemi oluşturmaktayım. C ile yazılan bir cgi programı, ayrı bir işlem olarak yaratılmayıp apache cgi modülü ile kullanıldığında, ortalama bir masaüstü bilgisayarda bile saniyede ortalama 800-1200 talebe yanıt verebiliyor.

Hele ki yazdığınız program işlemciyi yoğun olarak kullanan bir program ise, ör. C ile yazılmış, apache üstünde mod-cgi ile çalışan bir cgi programı yine apache üstünde mod-php ile çalışan aynı programdan 5-10 kat daha hızlı çalışmaktadır.
Okumaya devam et “PHP: Aslında CGI Antremanı Yapmalıyız”

Nesne yönelimli JavaScript öğreniyoruz

Javascript’te object oriented nedir ne değildir iyice öğrenmek isterseniz, Douglas Crawford’un 4 serilik eğitim videosunu yahoo’da izlemenizi tavsiye ederim. Onu mutlaka izleyin, izletin. Object oriented javascript çok güçlü bir dildir, inanamayacaksınız.

Part 1 – http://video.yahoo.com/watch/111593
Part 2 – http://video.yahoo.com/watch/111594/1710553
Part 3 – http://video.yahoo.com/watch/111595/1710607
Part 4 – http://video.yahoo.com/watch/111596/1710658

Plesk kontrol panele otomatik girmek

Sizin de elinizin altında yönetmek zorunda olduğunuz Paralles Plesk Panel sunucular varsa ve her seferinde kullanıcı adı/parola girmek istemiyorsanız internet tarayıcınızın bookmark bölümüne şöyle bir kayıt açmanız yeterli;

https://alanadınız.com:8443/login_up.php3?login_name=admin&passwd=parolanız

OnlyWire.com Toplu Sosyal İmleme Servisi

Onlywire.com 30 farklı sosyal imleme sitesinde web içeriğinizi otomatik olarak yayınlamanızı sağlayan bir hizmet sunuyor. Siteye üye olup aşağıda listesini gördüğünüz imleme sitelerine ait hesap bilgilerinizi kaydettikten sonra gönderim için hazır duruma geliyorsunuz.

sosyal_imleme_siteleri.PNG

OnlyWire.com web içeriğinizin yukarıda gördüğünüz sosyal imleme (social bookmarking) sitelerinde yayınlanmasını sağlıyor. Normal yollarla bir imleme sitesinde web bağlantınızı yayınlamak için 2 dakika zaman ayırdığınızı varsayarsak, tüm imleme sitelerinde içeriğinizi yayınlamak 1 saatinizi alabilir. OnlyWire sitesi sizi bu zahmetten kurtarıyor.

OnlyWire.com’a üye olup bir kereliğine hesap bilgilerinizi (imleme sitelerinin kullanıcı adı ve parolası) kaydettikten sonra, sadece 2 dakikada web içeriğinizin 30 ayrı sosyal imleme sitesinde yayınlamasını sağlamış oluyorsunuz. OnlyWire kendi altyapısını kullanarak kısa süre içinde içeriğinizi ilgili imleme sitelerine göndererek internette yayınlanmasını sağlıyor. OnlyWire işleminin sonunda, eposta adresinize bir sonuç raporu da yolluyor. İçeriğinizin yayınlandığı imleme siteleri de, hem içeriğinize göre size ziyaretçi gönderiyor hem de geri bağlantı sağlamış oluyor.

screenshot-2
OnlyWire sitesi: Hesapların tanımladığı sayfa

Web trafiği için geri bağlantıların (backlinks) yani diğer sitelerden sizin sitenize verilen bağlantıların önemi büyük. Özellikle google pagerank değerinizi hesaplarken sahip olduğunuz geri bağlantıların sayısına ve kalitesine çok önem veririyor

OnlyWire sitesi için ücretli ve ücretsiz olmak üzere iki türüyelik var. Ücretsiz üyelikte günlük 5 gönderim hakkına sahipsiniz ayrıca OnlyWire yaygınlaşabilmek için “Bookmark Share” düğmesini sitenize koymanızı talep ediyor. Ücretli seçenekte böyle bir zorunluluk olmazken, aylık $2.49 veya yıllık $24.99 ödemeniz gerekiyor. Eğer günlük 5 gönderim sınırı size yetiyorsa ücretli üye olmanıza gerek yok.

WordPress’i Hızlandırma ve Performans İpuçları – I

wordpress-performans-hız

WordPress’inizin başarımından (performansından) şikayetçi iseniz bu yazı tam size göre. WordPress başarımı hakkında sürekli yazmayı düşündüğüm bu yazı dizisinin ilkinde başarım artırmaya yönelik WordPress bileşenleri üzerinde duracağım.

WordPress (WP)’in performansını artırmak için kullanılan WP-Cache, Hyper Cache, WP Super Cache ve 1 Blog Cacher gibi birçok  eklenti var. WP sunucuyu çok fazla yoran bir script değil fakat kullanılan eklentiler ve temanızın özellikleri sunucuya yük getirebilir. Bu da sayfalarınızın açılma süresine olumsuz etki eder. Hatta sunucunuzun yöneticisi bu durum hakkında sizi uyarabilir.  WP’e geçtikden sonra eklentilerin sayfa açılma/oluşturma hızını nekadar etkileyebileceğini iyi öğrendim. WordPress başarımını artırmak için önbellekleme (Caching) eklentilerini kulllanmak iyi bir çözüm olabilir.

Okumaya devam et “WordPress’i Hızlandırma ve Performans İpuçları – I”

Adsense Optimized WordPress Themes

Adsense getirisinde reklamların türü, rengi ve yerleşimi önemli bir fark sağlıyor. Sayfa tasarımında gözü ısırmayacak, tam olarak sayfayla bütünleşmiş reklam yerleşimi tıklama oranını ciddi oranda arttırabiliyor. WordPress blog altyapısı olarak en çok tercih edilen scriplerden biri. Bu adreste adsense’in ustaca monte edildiği wordpress temaları yer alıyor.

Reklamlar yerleştirilirken uygulanan ve tıklanma oranını önemli oranda artıran bazı numaralar var. Yatay ve dikey navigasyon menülerine paralel veya menünün devamıymış gibi bağlantı reklamı yerleştirmek. Adsense poliçesinde yasaklanmasına rağmen sütün reklamların üstüne veya hemen yakınına reklamla alakalı izlenimini yaratan ilgi çekici simgeler koymak. Hatta bazen, reklama tıklanmasını telkin eden rica veya emir kipli ifadeler.

Adsense’den getiri sağlayan bir siteye sahip olmanın birçok ön kriteri var. Kişisel fikrime göre, teknik ayrıntıları geçersek bir sitenin hit sağlaması için; öncelikle özgün bir içeriğe sahip olması gerekiyor. Mümkünse belirli bir konuda olmalı. Bu kısım şu yazıda daha iyi anlatılıyor. Sitenin yaşı da önemli. Domain yaşı az olan bir sitenin kısa sürede yüksek ziyaretçi çekmesi pek alışıldık bir durum değil. Site isminin yayılması için uzunca bir süreye ihtiyaç var. Kaliteli bir site, arama sonuçlarında benzerlerinden daha üstlerde listelenir. Kaliteyi sitenin içeriği kadar o siteye diğer kaliteli siteler tarafından verilen bağlantılar da etkiliyor. Kaliteli bir site içi boş ve sıradan bir siteye bağlantı vermez. Teknik detaylarla birlikte arama motorlarının kullandığı yüzlerce bilinen ve bilinmeyen kriter var. Özellikle google bu konuda teşhis yeteneği ve kullandığı yazılımıyla öne çıkıyor. Bilinmeyen kriterleri tahmin etmek için Google’ı indeksleme işini elle yapan gerçek bir insan gibi düşünmek gerekiyor. Yapay zeka tekniklerinin kullanıldığı Google yazılımını anlamanın ve kısa vadede bu anlamdan fayda sağlamanın kolay bir yolu yok. Bugün Google, yazılımını geliştiren ve destekleyen için en az sizin kadar IQ&EQ seviyesine sahip seçkin çalışanlara sahip.

Yazan: Tankado

Bir robots.txt numarası

Hemen hemen tüm arama motorları, robots.txt dosyasının ana dizinde olup olmadığına bakar. Robots.txt ile arama motorunun siteniz içinde nasıl hareket edeceğini bildiren yönergeler tanımlarsınız. Bunlar hangi dizinlerin arama indeksine dahil edileceği/edilmeyeceği, hangi arama motorunun sitenizi ne zaman veya ne sıklıkla ziyaret etmesi gerektiği (çünkü bazen arama motorları site trafiğinizin en yoğun olduğu zamanlarda daha da yük getirebiliyor) gibi yönergeler olabilir.

Robots.txt nin başka bir özelliği de “Sitemaps auto discovery” . Sitenizde bir sitemap sayfası yer alıyorsa, motorun sitenizi daha iyi indekslemesi için sitemap adresini de belirtebilirsiniz. Bunun yanında genellikle sitemaps adresleri arama motorunun kayıt sayfasından elle eklenir. Bu iş için robots.txt dosyasından yararlanmak oldukça kullanışlı.

Örnek robots.txt dosyanızın içeriği şöyle olabilir:


sitemap: http://www.example.com/sitemap.xml.gz


Sitemap özelliği Google, Yahoo!, MSN ve Ask gibi büyük arama motorları tarafından destekleniyor.

Insan doğrulama için değişik bir yöntem

CAPTCHA insan doğrulama için ençok kullanılan yöntem. CAPTCHA resimli yöntemde (bu sene OSYM sonuçları açıklamak için de kullandı) eğri büğrü (robotik bir yazılımın okuyabilmesi çok güçtür) harfleden oluşan bir kelimeyi kutuya girmemizi istiyor. Kodu doğru olarak okumayı başarır ve gönderirseniz karşı taraftaki yazılım isteği yapanın bir program değil de gerçek bir bir insan olduğuna karar veriyor. Aksi takdirde ilgili servisi kullanmanıza izin vermiyor. Web in kirlenmesi ve haksız web servisi kullanmanın önüne geçmek adına, robot yazılımların kolaylıkla çözemeyeceği bu resim kodları kullanmak son zamanlarda çok işe yarıyor.

Resim kodu kullanmanın yanında daha basit ilginç bir çözüm ise tarayıcı tarafında javascript kullanarak insan etkileşimi teyit etmek. Örnek vermek gerekirse bir insan formu dolduruken kutuların içine tuş basımı gerçekleştirir (onkeydown-onkeyup) veya formu gönderirken submit düğmesinin tıklama (onmousedown-onmouseup-onmousemove) olayını tetikler. Ancak robotik bir yazılım bunların hiçbirini yapmayacağından fark kolaylıkla tespit edilebilir. Javascript ile onKeyDown ve onMouseMove olayları yardımıyla forma verisine bir onay kodu eklenebilir.

Kaynak: http://www.0x000000.com/?i=224

Google javascript ‘i dikkate alıyor

Burada söylendiğine göre;

“/human”+Math.round(99999*Math.random())+”.png”

gibi bir javascript kodu ile dosya ismi olusturulan bir sayfa var diyelim. Bilinenin aksine arama motorları bu sayfadaki javascript’i görmezden gelmiyor (1).  Web sunucusunun kayıtlarından google bot’unun javascript kodu bulunan sayfayı taradıktan sonra aşağıdaki gibi bir istekte bulunduğu görülüyor. Bir ölçüde de olsa javascript içeriğinin taranması güzel bir durum.

66.249.66.73 crawl-66-249-66-73.googlebot.com – -[29/Jul/2007:15:54:11 +0100]
GET /human HTTP/1.1 404 211

[1] Googlebot’unun javascript içeriği de bir ölçüde de olsa taradığını görmüş olmak güzel. [1] – Burada ve burada da geçtiği üzere javascript arama motorları tarafından tanınmayan bir öğe olarak bildirilmiş. Ayrıca javascipt li içerik varsa <noscript> tag’i ile tekrar sunulması tavsiye edilmiş.

cPanel ile veritabanı ve ev dizinini düzenli yedeklemek

Web sunucusunda yönetim paneli olarak cPanel’i kullananların işine yarayabilecek bir konudan bahsetmek istiyorum. Konu sunucudaki dosya ve veritabanlarının yedeklenmesi ile ilgili. cPanel yedeklemeyi yapacağınız bir sayfayı içeriyor. Buraya gidip istediğinizi yedekleyebilir veya geri yükleyebilirsiniz. Aslında esas mesela yedeklerin düzenli olarak yapılması ve güvenli bir yere kaydedilmesi. Site Backup CP ismindeki program ile veritabanı ve sitenizin ev dizinini istediğiniz zamanlarda yedekleyip yerel bilgisayarınıza kaydedebiliyorsunuz. Ayrıca ZBackup isminde başka bir program var fakat indirebileceğim bir adresi henüz bulamadım.

Yedekleme yapmak için atadan kalma ve oldukça özgün bir yöntem de .bat (batch: toplu işlem dosyası) dosyalarını kullanmak. Aşağıdaki gibi bir işlem dosyasını zamanlanmış görevlere ekleyerek düzenli olarak çalıştırılmasını sağlayabilirsiniz.

Web sunucusunda yönetim paneli olarak cPanel’i kullananların işine yarayabilecek bir konudan bahsetmek istiyorum. Konu sunucudaki dosya ve veritabanlarının yedeklenmesi ile ilgili. cPanel yedeklemeyi yapacağınız bir sayfayı içeriyor. Buraya gidip istediğinizi yedekleyebilir veya geri yükleyebilirsiniz. Aslında esas mesela yedeklerin düzenli olarak yapılması ve güvenli bir yere kaydedilmesi. Site Backup CP ismindeki program ile veritabanı ve sitenizin ev dizinini istediğiniz zamanlarda yedekleyip yerel bilgisayarınıza kaydedebiliyorsunuz. Ayrıca ZBackup isminde başka bir program var fakat indirebileceğim bir adresi henüz bulamadım.

Yedekleme yapmak için atadan kalma ve oldukça özgün bir yöntem de .bat (batch: toplu işlem dosyası) dosyalarını kullanmak. Aşağıdaki gibi bir işlem dosyasını zamanlanmış görevlere ekleyerek düzenli olarak çalıştırılmasını sağlayabilirsiniz.

Okumaya devam et “cPanel ile veritabanı ve ev dizinini düzenli yedeklemek”

uncaught exception: XMLHttpRequest.open methodunun çağrılması için gerekli izniniz yok.

Gece vakti aşırı korumacı bir tarayıcıyla başım dertte. Firefox yerel bir dosyadaki XMLHttpRequest kodu ile uzak bir siteden veri çekeceğinde bu hatayı verdi. Aslında uyarı demek daha doğru olacak. Bununla karşılaşana kadar Internet Explorer 6 da böyle bir durumun varlığından bile haberim yoktu. İşin aslı burada yazdığına göre yüce tarayıcı Firefox’un bir güvenlik özelliği. Kısaca Firefox çapraz-alan adı (cross-domain) sorgulamalarına izin vermiyor. Yani isteyensiten.com alan adından baskabirsite.com adresindeki bir veri kaynağından AJAX ile XML olarak veri istemek pek mümkün değil. Denerseniz şöyle bir hata mesajı alıyorsunuz, benden söylemesi ;)

Error: uncaught exception: 
Permission denied to call method XMLHttpRequest.open

Gece vakti aşırı korumacı bir tarayıcıyla başım dertte. Firefox yerel bir dosyadaki XMLHttpRequest kodu ile uzak bir siteden veri çekeceğinde bu hatayı verdi. Aslında uyarı demek daha doğru olacak. Bununla karşılaşana kadar Internet Explorer 6 da böyle bir durumun varlığından bile haberim yoktu. İşin aslı burada yazdığına göre yüce tarayıcı Firefox’un bir güvenlik özelliği. Kısaca Firefox çapraz-alan adı (cross-domain) sorgulamalarına izin vermiyor. Yani isteyensiten.com alan adından baskabirsite.com adresindeki bir veri kaynağından AJAX ile XML olarak veri istemek pek mümkün değil. Denerseniz şöyle bir hata mesajı alıyorsunuz, benden söylemesi ;)

Okumaya devam et “uncaught exception: XMLHttpRequest.open methodunun çağrılması için gerekli izniniz yok.”

CAPTCHA ile insan doğrulama

CAPTCHA, insan olmayan sistemleri bir takım insancıl özellikleri kullanarak tespit etmek olarak tanımlanabilir. Son bir aydır siteye onlarca reklam/link içeren spam yorumlar eklenmeye başlandı. Bu iş yorum spamcıları (blogspam comment) olarak sınıflandırılan yazılımlar kullanılarak yapılıyor. Bu programlar web deki formları tarayor ve açık sitelere mesaj ve bağlantılar otomatik olarak bırakılıyor. Bu iz bırakma atraksiyonları tamamen otomatize edilmiş yazılımlarla, pagerank/hit artırmak amacıyla yapılıyor. Siteyi spam dan korunmak için yorum ekleme formuna CAPTCHA güvenlik resmi yerleştirdim. Resimdeki güvenlik kodu ilgili kutuya doğru olarak girilmedikçe eklenen yorum kabul edilmeyecek.

CAPTCHA, insan olmayan sistemleri bir takım insancıl özellikleri kullanarak tespit etmek olarak tanımlanabilir. Son bir aydır siteye onlarca reklam/link içeren spam yorumlar eklenmeye başlandı. Bu iş yorum spamcıları (blogspam comment) olarak sınıflandırılan yazılımlar kullanılarak yapılıyor. Bu programlar web deki formları tarayor ve açık sitelere mesaj ve bağlantılar otomatik olarak bırakılıyor. Bu iz bırakma atraksiyonları tamamen otomatize edilmiş yazılımlarla, pagerank/hit artırmak amacıyla yapılıyor. Siteyi spam dan korunmak için yorum ekleme formuna CAPTCHA güvenlik resmi yerleştirdim. Resimdeki güvenlik kodu ilgili kutuya doğru olarak girilmedikçe eklenen yorum kabul edilmeyecek.
Okumaya devam et “CAPTCHA ile insan doğrulama”

NetServer:Yeni bir WAMP paketi

NetServer Windows (NT/2000/2003/XP) için hazırlanmış ve sistem tepsisinde çalışan bir arabirim tarafından kolayca konfigüre ve kontrol edilebilien bir sunucu paketidir. Paketin içerisinde Apache+PHP, MySql, Filezilla FTP Server, hMailServer and PHP scriptleri yer alıyor.

NetServer Windows (NT/2000/2003/XP) için hazırlanmış ve sistem tepsisinde çalışan bir arabirim tarafından kolayca konfigüre ve kontrol edilebilien bir sunucu paketidir. Paketin içerisinde Apache+PHP, MySql, Filezilla FTP Server, hMailServer and PHP scriptleri yer alıyor.
Okumaya devam et “NetServer:Yeni bir WAMP paketi”