Merhabalar,

Uzun zamandan sonra yeni bir yazıyla yine karşınızdayım :P. 90′lı yıllardan beri web teknolojilerinde gelişme olmuş mu diye bir araştırma yapmak istedim. Bir baktım etraf “web applications frameworklerle” dolmuş. Aslında Django daha çok hoşuma gitti (ki bu konuya daha sonra değinmeyi planlıyorum) ama sunucu firmasının sağladığı web alanına CakePHP kurmam çok daha kolay olacağı için CakePHP konusuna biraz bakayım dedim.

Bu yazımda Pardus’a CakePHP yükleme konusunu sizinle paylaşacağım çünkü CakePHP’nin sitesindeki kurulum adımlarından biraz daha farklı adımlardan geçmek gerekiyor. CakePHP ile ilgili detaylı bilgi, çalışma mantığı ve benzeri konular için lütfen web sitesini ziyaret ediniz.

1) Gereksinimler

– MySQL veritabanı

– PHP desteği

– Apache Sunucusu

– phpMyAdmin

Yukarıdakilerin hepsini PiSi aracılığıyla yükleyebilirsiniz. Takılırsanız bunların kurulumlarıyla ilgili yazılar arayabilirsiniz, yeterince bilgi internette var. Mesela http://blog.serkanceken.com/pardus-apache-mysql-phpmyadmin-kurulumu.html adresine bakabilirsiniz.

2) CakePHP Edinelim

Evet tüm gereksinimleri karşıladık. Şimdi CakePHP edinelim. http://cakephp.org/ adresinden son sürümü indirip bilgisayarımızda /var/www/localhost/htdocs klasörüne açalım.

Bu klasöre koyduğunuz verileri web tarayıcınız ile görüntülemeniz mümkün olacak. Yani web tarayıcınızla localhost adresine giderseniz ulaşacağınız klasör aslında burası. Tabi tüm bunları yapmadan önce Apache sunucunuzu etkinleştirmeniz gerekiyor (MySQL’i de hazır yeri gelmişken etkinleştirseniz fena olmaz). Tasma’yı kullanabilirsiniz bu iş için, Tasma->Sistem Seçenekleri->Servis Yöneticisi.

3) Veritabanı Oluşturalım

Şimdi de denemelerimizi yaparken kullanacağımız veritabanımızı oluşturalım.Hemen phpMyAdmin’imizi açalım ( http://127.0.0.1/phpmyadmin ). Bu araç ile veritabanlarınızı görsel bir şekilde yönetebileceksiniz. Bu aracı kullanarak hemen boş bir veritabanı oluşturalım ve adını “kektarifi” koyalım.

Aslında bu aşamada kullanacağımız tabloları da oluşturabiliriz ama şimdilik bu adımı geçelim. Bir sonraki yazıda örnek olarak CakePHP kullanarak bir kek tarifi yazılımı yapacağım. Bu yazının amacı en başta dediğim gibi sadece kurulum ve ayarlamalarla ilgili konulara değinmek.

4) CakePHP Veritabanı Bağlantısını Ayarlayalım

Veritabanı bağlantısını ayarlayabilmek için öncelikle ana CakePHP klasörünün içindeki /app/config/database.php.default dosyasının bir kopyasını oluşturup /app/config/database.php olarak kaydedelim.

Ardından database.php dosyasını açalım ve $defaut adındaki dizinin değerlerini gerçek değerlerle değiştirelim.Mesela veritabanı adı, kullanıcı adı, şifre, veritabanı tipi ve benzeri değerleri kendi sistemimizle uyumlu olacak şekilde girelim. Kullanıcı adı ve şifre burada phpMyAdmin kullanırken kullandığınız kullanıcı adı ve şifredir.

5) mod_rewrite Sorunu

Başka sistemlerden farklı olarak Pardus’da mod_rewrite’ı etkinleştirmek için fazladan bir adımdan geçmek gerekiyor.

Öncelikle apache ayar dosyamızda ( /etc/apache2/httpd.conf ) AllowOverride parametrelerinden doğru klasörle ilgilenenini All olarak ayarlayalım. Şimdilik güvenlikle ilgilenmiyorsanız ve sadece sistemi çalıştırmak istiyorsanız <Directory /> için AllowOverride‘ı All olarak ayarlayabilirsiniz.

Bir de /etc/apache2/vhosts.d/00_default_vhost.conf dosyasındaki AllowOverride değerini de All‘a ayarlayalım.

6) Yazma Yetkileri

/app/tmp klasörüne yazma yetkisi vermemiz gerekiyor. Bunun için

chmod -R 777 /app/tmp

komutunu kullanabilirsiniz. Aslında sadece web sunucusu tarafından kullanılan kullanıcı için yazma yetkisi verilse daha iyi olurdu ama şimdilik tamamen deneme amaçlı çalıştığımızdan bu tür detaylara dikkat etmemize gerek yok.

7) Hash Ayarı

Aslında şu an sistemimiz hazır ama Security.salt meselesini de hazır yeri gelmişken düzeltelim. Bunun için /app/config/core.php dosyasını açıp 153. satıra gelelim ve Security.Salt‘ın değerini orada yazılı bulunan değerden farklı bir değer atayarak değiştirelim. core.php dosyasını kaydedip kapatalım.

8) Son

Kurulum işlemlerini ve ayarları tamamladık. Şimdi http://127.0.0.1/CAKEKLASÖRÜNÜZ adresine giderseniz CakePHP sistemi ile karşılaşacaksınız.

Herhangi bir sorun yoksa:

– tmp klasörünüzün yazılabilir olduğu

– veritabanınızın ayarlı olduğu

– veritabanınıza bağlanılabildiği

size bu sayfada bildirilecektir. Ayrıca bu sayfanın, mod_rewrite konusunda sıkıntı çıkmadıysa, grafik özellikleri bulunan (resim ve css) bir sayfa olması gerekiyor. Eğer değilse o zaman mod_rewrite konusunda fazladan birkaç ayar yapmanız gerekebilir.

Şimdilik bu kadar, bir sonraki yazıda görüşmek üzere. Umarım işinize yarar.

Kolay gelsin. İyi kodlamalar.