laplace's demon

Programming

Scalability in PHP

by on Nov.07, 2009, under php, Programming

PHP nin sevdiğim tarafı iyi scale edilebiliyor olması. Bu konuda güzel bi prezentasyon buldum.

Leave a Comment : more...

Shared Hosting için Zend Framework kurulumu

by on Oct.29, 2009, under php, Programming

dertli bir iş. en büyük sıkıntı da shared hostinglerde document root değiştirilemediği için oluyor. zend framework için önerilen dizin yapısında public klasörü rootda yer almıyor. bu bir çok açıdan tercih edilmesi gereken bir durum. ancak shared hostinglerdeki document root olan httpdocs ya da public_html klasörünün bir üzerinde değişiklik yapılamadığı için aşağıdaki kodu root dizindeki .htaccess dosyasının içine kopyalayın. public dizinindeki .htaccess dosyasını da kaldırın. mis gibi.

RewriteEngine On

RewriteRule ^\.htaccess$ - [F]

RewriteCond %{REQUEST_URI} =""
RewriteRule ^.*$ /public/index.php [NC,L]

RewriteCond %{REQUEST_URI} !^/public/.*$
RewriteRule ^(.*)$ /public/$1

RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^.*$ - [NC,L]

RewriteRule ^public/.*$ /public/index.php [NC,L]

kaynak: şurası.

1 Comment :, more...

Zend Studio ile Xdebug Kullanmak

by on Sep.16, 2009, under php

Oldukça uzun süredir Zend debugger kullanıyordum. Halimden de memnundum açıkçası, çünkü debugging olayından beklentim remote debugging den ibaretti ve Zend debugger da sorunsuz çalışıyordu. İşletim sistemi değiştirip mac’e geçmemle birlikte Xdebug’ı denemeye karar verdim, ve şimdi bi sürü “fancy” özelliğiyle birlikte Xdebug’ın Zend debugger’dan çok daha iyi olduğunu anlamış bulunuyorum.

Mac’e geçmemle beraber uzun süredir kullandığım Zend Studio 5.5 ve Aptana’dan da Zend Studio 7′ye geçmeye karar verdim. Zend Studio 7 eclipse üzerine kurulmuş harika bir ide. Gerçi ben hala alışabilmiş değilim ama artık bir değişikik yapmam şarttı.

Neyse, Zend Studio 7 malesef debugger olarak sadece Zend Debugger’a izin veriyor. Xdebug disable edilmiş durumda. Ancak ufak bir trick ile bunu değiştirmek mümkün. Şöyleki;

1. Zend Studio folder’a gidilir. cd /Applications/Zend/Zend\ Studio\ -\ 7.0.0
2. cd pluginsmkdir disabled
3. mkdir disabled
4. mv com.zend.php.debug* disabled
5. Bir de configurasyon dosyasında ufak bir değişiklik yapmamız gerek. open -a TextWrangler com.zend.php_<ZSE_version_number>/plugin_customization.ini
6. ‘org.eclipse.ui.workbench/UIActivities.com.zend.php.debug.ui.XDebugActivity’ alanının değerini ‘true’ olarak değiştir.
7. Zend Studio’yu yeniden başlat.
8. Preferences içinde PHP -> Debug sayfasında gerekli değişiklikler yapılır (debugger olarak Xdebug seç, PHP executable path i göster vb.)

Afiyet olsun.

Leave a Comment :, , more...

Linux Başlangıç Programları

by on Sep.02, 2009, under linux, Tech

Bu diyeceklerim red-hat bazlı distrolar içindir. Debian için de çok farklı değil.

Başlangıçta yani boot sonrası program mı çalıştırmak istiyorsunuz (mesela subversion deamon programı). O zaman tek yapmanız gereken “/etc/rc.d/rc.local” dosyasına gerekli satırı eklemek.

Mis gibi

Leave a Comment : more...

Ubuntu için tortoise svn alternatifi

by on Jul.21, 2009, under linux

Win Xp’de kullanıp hastası olduğum tortoise svn programının linux versiyonunun olmaması çok fena bir durum. Tortoise explorer shell ine entegre oluşu ve kolay kullanımıyla diğer bütün svn client’larının arasında pırlanta gibi parlıyor. Ubuntu (9.04 versiyonunu kullanıyorum şu anda) için rapidSVN isimli güzide bir program kullanıyordum. Kendi GUI si olan, C++ ile yazılmış güzel bir program. Ancak Nautilus shell ine entegre olmadığı, yani sağ tıklayıp işlem yapma güzelliğine sahip olmadığı için bana hep angarya gibi gelmiştir. İşte çözüm:

Buradan indireceğiniz program sayesinde aynı tortoise de olduğu gibi sağ tıklamak suretiyle svn repository’lerinizi kontrol edebilirsiniz. Ancak tortoise kadar ayrıntılı değil. sadece checkout, commit, update gibi basit işlemleri yapabiliyorsunuz. Ancak yine de baya bir zaman kazandırıyor.

Bu arada program Nautilus file manager programının “User scripts” isimli güzide özelliğini kullanıyor. Yani tek yaptığı menuye bir kaç dosya eklemek ve komut satırına komutlar vermek. Yani isterseniz kendiniz de menuyu genişletebilirsiniz.

Programın install edilmesi de şöyle, paketi açtığınızda içerideki “subversion” isimli dosyayı “~/.gnome2/nautilus-scripts” klasörüne kopyalamanız yeterli.

Leave a Comment :, , more...

Boot sırasını değiştirmek

by on Jun.16, 2009, under linux

Benim gibi ubuntu + windows kombinasyonu kullanıyorsanız, boot sırasındaki os seçim listesinde ubuntu’nun default olması dert olabilir. özellikle bilgisayarı başka biri de kullanıyorsa. çözüm ise

sudo gedit /boot/grub/menu.lst

ile menu.lst dosyasını açmak, içinde “default 0″ yazan satırı listedeki sıraya göre değiştirmek. default kurulumda windows 4. sırada çıkıyor. dolayısıyla “default 4″ yapınca işlem tamamlanmış oluyor. afiyet olsun.

Leave a Comment :, more...

Windows’u otomatik kapatmak

by on Jun.07, 2009, under windows

Windows’u belirli bir süre sonra kapatmak için 7£ ya program satmalarını aklım almıyor. Oysa windowsda zaten var olan shutdown programı ile windowsu belirli bir süre sonra kapatabilirsiniz.

shutdown -s -t 3000

Bu komut 3000sn yani 50dk sonra windowsu kapatacak. Ayrıca 50 dk sonra izlediğim film bitecek ve uyuyacağım.

1 Comment :, more...

YSlow performance guide

by on Apr.12, 2009, under Programming, Tech

Her zaman gerekli olan bu best 20 practise’i buraya koyuyorum ki hep önümde olsun

Leave a Comment more...

Zend Date ile tarih aralığı hesaplamak

by on Apr.02, 2009, under php

çok basit olsa da ben yine de buraya yazıyorum. yapmaya çalışılan kaç yaşında olduğunu hesaplamak.  tek yaptığım da iki timestamp’ı (biri şu anki tarih, diğeri doğum günü) birbirinden çıkartmak. küsüratlı bir rakam elde edilmek istenmiyorsa floor fonksiyonuyla yuvarlana da bilir. bir de 365 e bölmek istenmeyebilir. o ayrı.

$now = new Zend_Date();
$dob = new Zend_Date("954686860", Zend_Date::TIMESTAMP );
echo floor(($now->getTimestamp() - $dob->getTimestamp()) / (24 * 60 * 60)) / 365;
Leave a Comment :, more...

FFMpeg – error while loading shared libraries: libavdevice.so.52

by on Mar.04, 2009, under Programming

FFMpeg ile video convert işlemi yaparken bu hatayla karşılaştım (Centos server üzerinde). yapmaya çalıştığım işlem şuydu:

/usr/local/bin/ffmpeg -i /var/www/vhosts/got2b.ca/httpdocs/beta/private/orginal_videos/test.avi -f flv -r 30 -ar 44100 /var/www/vhosts/got2b.ca/httpdocs/beta/public/uploads/flv/suleyman4.flv 2>&1

Burada yaptığım prensipte avi dosyasını flv ye çevirmek.

Hata mesajının tamamı da şöyle birşey:

/usr/local/bin/ffmpeg: error while loading shared libraries: libavdevice.so.52: cannot open shared object file: No such file or directory"

bu olayın sebebi hata mesajında dediği gibi ldconfig’in libraryleri nerede arayacağını bulamaması. çözümü de amcaya bunun pathinin neresi olduğunu söylemek.

uzun yol:

LD_LIBRARY_PATH=/usr/local/lib/
export LD_LIBRARY_PATH=/usr/local/lib/

komutlarını çalıştırmak. ama reboot ederseniz bu komutları tekrar çalıştırmanız gerekiyor. dolayısıyla bu uzun yol :)

kısa yol:

cd /etc/ld.so.conf.d

vim custom-libs.conf ( ya da istediğiniz text editoruyle dosyayı açabilirsiniz)

dosyanın içine şu satırı yazıp kaydedelim:

/usr/local/lib

sonra da ld olayını configleyelim (o ne demek?)

ldconfig

budur.

Leave a Comment :, , more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Blogroll

A few highly recommended websites...