
Php ve mysql i sistemde çalışır hale getirebilmek için birkaç şeye ihtiyacımız var bunlardan ilki bir web sunucumuzun olması lazım. Bunun için apache.org adresine girerek apache yi ilk başta edinmemiz gerekiyor.
Burdan download linkine tıklıyorum. Apache nin bir çok ürünü var biz bundan HTTP Server ile ilgileniyoruz. Burdan download kısmından from mirror diyoruz. Apache nin şu an 2.2.0 versiyonu var Biz bir eski versiyon olan 2.0.63 ü kullancaz. Windows bilgisayarda kullanacağımız için win32 olan uygulamayı seçiyorum.
ve direk kurulum halindeki direk msi formatındakini seçimi yapıyorum.4 Mb boyutundaki dosyayı bilgisayarımıza kaydediyoruz. Php yi indirmek için ise php.net e giriyorum.
php.net e girdikten sonra download kısmına giriyorum.
Şuan için php nin 5.2.6 versiyonu varmış.
windowsta kuracağım için zipli halde son versiyonunu çekiyorum.Aynı şekilde bilgisayarıma bunuda kaydediyorum. Sonraki aşama olarak mysql i bilgisayarıma çekmem gerekiyor.
Bunun için mysql.com a giriyorum. Mysql in şu an 5 versiyonu mevcut. Yalnız 5 versiyonu daha çok ileri seviyede veritabanı ile işlem yapanlar için gerekli. Web programcılığında bir triger ın veya bir procedure ün çok fazla ihtiyacımız yok.
Bundan dolayı mysql in daha eski yani 4.1 versiyonunu kaydeceğiz. Burdan indirme bağlantısına geliyorum yine. Mysql in şuanki versiyonlarından seçmeyip. aşağı inerek eski versiyonları kısmından 4.1 i çekiceğim. Windows makinede kurulum yapacağım için windows versiyonuna tıklıyorum.
Yine zipli değilde direk kurulum halinde olan dosyayı seçiyorum.4.1 versiyonundan kaydolmadan sayfayı geçerek download a başlıyorum.
Birçok ayna sunucusundan hangisinden yüklemek istediğimi sordu. Burdan herhangi birini seçebiliriz. Mysql ide bilgisayarıma indiriyorum.
Tüm dosyaları sistemimize kaydettikten sonra İlk dosyanın kurulumu ile başlıyoruz. Hepsinden önce web sunucumuzu aktif hale getirmemiz lazim. Bunun için apache ile kuruluma başlıyorum. Sözleşme karşıma geldi ileri dedim. İlk karşımıza sorulan parametreler sunucumuzla ilgili bilgilerdir. Eğerki kendi bilgisayarımızada çalışma yapıyorsak. Yani sunucumuz internete açılmayacaksa genelde bu değerleri localhost olarak geçebiliriz.
Şayet kullandığımız sunucu gerçekten bir internet sayfasını kullanmak için barındırılacaksa burdaki adresleri gerçek domain adresi olarak kulllanmamız gerekir.
Network domain localhost Server name localhost Admin mailinide admin@localhost yazarak geçiyorum.
Bize bir sonraki aşamada sunucunun çalışacağı portu soruyor. Eğer ki bu portu değiştirmez ve 80 kullanırsak herhangi bir localhost yazıp enter a bastığımızda ki burda tavsiye edilen port 80 dır direk sayfayla karşılaşırız.
Bundan farklı bir portta kullanmak istiyorsak. gerek apache nin ayar dosyalarından gerekse alttan seçerek kullanabiliriz.
İleri diyorum. Tipik kurulumu seçeceğim. Apache nin kurulacağı dizini sordu. yine ileri diyorum kurulum başlayacak ve kuruluma başladı Bu arada php dosyamı sıkıştırılmış formattan açıyorum.
Php nin içine girdiğimizde bir çok dosya olduğunu görüyoruz. Apache miz kurulumu tamamladı. ve kendini servis olarak tanımladı.
Başlat > Ayarlar > Denetim Masası
Burdan Yönetimsel Araçlar burdanda hizmetlere girmek suretiyle apache nin servis olarak kurulduğunu görebiliriz. gerek burdan apache yi durdurarak veya tekrar başlatarak işlem yapabileceğimiz gibi Apache nin kendi programı olan Apache monitör den de servisi kapatıp açabilir veya tekrar başlatabiliriz.
Şu an apache sistemimizde çalışıyor. Apache nin ayarlarını düzenlemek ve php desteğini aktif etmek için Apache nin ayar dosyasında işlem yapmamız lazım Ben kopyaladığım php dizinini Apache group un içine yapıştırdım.
ve bu klasörün adını php olarak değiştirdim. daha sonra apache de bunu tanımlarken php dizinin program files in içinde apache groubun içinde php olarak yer alcak.
php dizinine girdigimde burda install.txt dosyasının olduğunu görürüm. Bu dosya bana php kurulumun her türlü platform ve her türlü web sunucuda nasıl olduğunu anlatıyor.
Ben php yi cgi olarak apache 2 şeklinde kurulumu gerçekleştireceğim. Apache2 şeklinde dosyada aratıyorum.Evet Apache 2.0 ın windowsta kurulumu cgi olarak kurulumu modül olarak kurulumu Dikkat ettiyseniz aslında bu dosyada her türlü platform için kurulumu anlatiliyor.
Şu an php5 versiyonunu sistemimize yüklemek istiyoruz. Bundan dolayı Bu satırlardan hepsini alıp bunlardan sadece php 5 için olanı kullancağım. Yani
4 için olan satırı gözardı ederek bu satırları apache nin ayar dosyasına eklemem gerekiyor. Daha sonra bu klasörden çıkıyorum. Apache nin ayar dosyası apache klasöründeki conf dizinindeki httpd.conf dosyasıdır.
Bu dosyayı herhangi bir metin editörü ile açıyorum. ve php nin install.txt sinden aldığım parametreleri buraya yapıştırıyorum. Az önce söylediğim gibi php yi bu dizinde tanımlayacağımnı söylemiştim server alias ile belirtilen php nin kurulum klasörünü kendi kurduğum klasör olarak değiştiriyorum.
Eğerki php yi buraya açmak yerine direk c: ye açsaydım bu işlemi yapmama gerek kalmayacaktı.Bu paremetreleri ekleyerek php yi cgi olarak apache ye tanıtmış oldum.
ScriptAlias /php/ "C:/Program Files/Apache Group/php/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/php/php-cgi.exe"
Bunun yanında httpd.conf dosyasında bilmemiz gereken bir kaç önemli şey var. Apache nin çalışma dosyalarını yani sayfalarımı apache nin içerisindeki htdocs klasörüne kaydetmem gerekir.
Eğer ki ben bunun farklı bir klasör olmasını istiyorsam document dir Document Root ile belirtilen klasörü değiştirmem gerekir. Mesela C: de degilde D: de sunucumda dosyaların yer almasını isteseydim burdaki C: yi D: yaparak ve tam yolunu yazarak değişiklik yapabilirdim.
Apache de bizim için diğer önemli olan bir unsur karakter kodlamasıdır. Eğer ki her seferinde dosyalara ön tanımlı karakter setimizi yazmak istemiyorsak Bu conf dosyasına da parametre olarak ekleyerekte ön tanımlı değer atayabiliriz. Türkçe için karakter seti ISO-8859-9 dur Dosyanın en sonuna giderek
AddDefaultCharset ISO-8859-9
Dosyamıza default Charset imizi ekleyerekte her sayfanın bu karakter setinde yorumlanmasını sağlayabilirsiniz bizim için bir önemli etkende Apache dosyasında yer alan directory index parametresidir. Directory index parametresi bir klasör talep edildiğinde eğerki bir dosya adı yazılmazsa o klasörde arayacağı sıralı dosyaların isimleridir.
Yani biz localhost/ bir klasör ismi yazdığımızda sistem ilk başta index.html e bakar eğerki yoksa index.html.var dosyasına bakar. bunları sırayla kontrol eder php dosyalarımızıda çalıştırabilmek için
DirectoryIndex index.html index.html.var index.php
buraya fazladan index.php paremetresini ekledim. Daha sonra bu dosyayı kaydediyorum ve çıkıyorum. Ayarlarımızın aktif hale gelebilmesi için apache yi tekrar başlatmamız gerekiyor. Apache monitörden apache yi tekrar başlattım ve sorunsuz başladı daha sonra http://localhost yazıp enter a bastığımda karşıma apache nin karşılama sayfası çıkıyor. Şuan herhangi bir port adresi yazmadığım için apache 80 portan çalışıyor demek. Ben bunun farklı bir port olmasını istersem iki nokta şeklinde http://localhost:81 port adresini yazabilirim. Bunuda yine Apache nin ayar dosyası olan httpd.conf tan port parametresi ile bulabilirim. Burdaki portu değiştirerek sayfamı farklı bir portta yayınlayabilirim.
Eğer ki bilgisayarımızda birden fazla sunucu çalışıyorsa buna ihtiyaç duyabiliriz. Normalde zaten böyle birşeye ihtiyacımız yok. Apache yide çalışır hale getirmiş olduk. Az öncede söylediğimiz gibi htdocs klasörü ilk ana doysalarımın barındırdığı yani web dizinidir. Ben buraya info.php adında bir dosya oluşturdum. Daha sonra bu dosyayı herhangi bir metin editörü ile açıyorum.
Bu dosyanın içine php nin şu anki bilgilerini görmek için
<?
phpinfo();
?>
phpinfo fonksiyonunu yazarak daha sonra bunu browserdan talep ediyorum. Sayfayı çağırdığımızda bu şekilde bir sayfa karşımıza çıkıyorsa Bu php yi sorunsuz olarak tanıttım demektir.
Php versiyon 5.2.6 nın sistemde kurulu olduğunu görüyoruz. Bir sonraki aşama için php ayarlarını kontrol edebiliriz. php dizininde php.ini-dist isimli dosyayı tekrar isimlendirerek bunu php.ini haline dönüştürüyorum dosyayı yeniden adlandır dedim ve uzantısının dist kısmını silerek ini şekilde değiştirdim.
Daha sonra bu dosyayı açıyorum. php.ini de beni ilgilendiren bazı parametreler var. Bunlardan ilk önemlisi hata gösterme fonksiyonu error_reporting olarak isimlendirdiğimiz paremetre php nin bize gösterceği hataları tanımlar şu anki değerine baktığımızda Notice yani uyarılar hariç tüm hataları göstermenin açık olduğunu görüyoruz. ikinci bizi ilgilendiren parametre ise display_error parametresidir. Bu parametre off olduğunda php de hatalı bir komut yazsak bile hata üretilmediği için bunları farkedemeyiz.
Eğerki yüksek boyutta dosya yüklemesine ihtiyacımız olursa upload kısmında belirtilen upload_max_filesize ı da arttırarak bunu değiştirebiliriz. Bir sonraki paramaetre olarak php nin eklentilerini yani extension larını kullanabilmek için klasörün tanımlı olması gerekir. Extension dir isimli paramaetre bunu sağlıyor.
Buraya dikkat edersek şu an çalıştığı dizin olarak tanımlanmış. Aslında bu paremetre yanlış. bunun ext dizini olarak tanımlı olması lazım. Bunuda düzeltiyorum
extension_dir = "./ext"
Eğer ki belli extension ları kullanmak istersem php.ini den aktif etmem gerekir. dll olarak arattığımda şu an sistemde kullanabileceğim tüm extension ları görüyorum.
bunlardan gd2 resim oluşturmak için kullandığımız bir kütüphane Devamlı ihtiyacımız olabilecek kütüphanelerdendir. Bunun haricinde mysql kullanacağımız için mysql eklentisinide aktif hale getiriyorum. Bunun gibi bir çok php ile gelen eklentiyi aktif hale getirerek kullanabiliriz. Bunun haricindeki paremetrelerde bir çok bilgi var. Yalnız bunlar şu an için beni ilgilendirmiyor. Dosyamı kaydederek çıkıyorum. Artık php ayarlarımda yapılmış durumda Bir sonraki adım olarak mysql i sistemde kurulu hale getirip işlemi bitirmiş olacağım.
Mysql kurulumuna başlıyorum. üç farklı kurulum seçeneğim var Custom dersem eğer ki özel paremetreleri tek tek bana soracak. Mysql server ve Client i kuracağım dedi. Kuracağı dizini söyledi devam ediyorum.
Kuruluma şu an başladı. Mysql.com account u sordu. Geçiyorum bu adımı Mysql server imizi ayarlamak için tikli halde bitiri seçtim.
Şu an mysql kurulumumuz gerçekleşti Mysql i ayarlamak için paremetreleri tek tek bana soracak. Ben burdan ayrıntılı ayarlamayı seçiyorum. Bilgisayarımızda geliştirme yapacağımız için Developer Machine şeklinde seçim yaptım. Bir sonraki adım mysql de şu an kullanabilecek bize veritabanı motorlarını sordu. Çok büyük datalarla ve çok kompleks işler yapmayacağım için Non Tansactional database i seçtim InnoDB gibi farklı seçeneklerimde var Biz küçük uygulamalar yapacağımız için MyIsam bizim işimizi zaten görüyor. bir sonraki aşamaya geçtim Bilgisayarıma bağlanabilecek kişi sayısını şu an bana sormakta Kendi bilgisayarımda yine testler için kullanacağım için 20 connection yeterli olabilir şeklinde ilk seçeneği seçerek devam ediyorum. Mysql in çalışacağı portu sordu. Ön tanımlı port 3306 dır. Bundada herhangi bir değişiklik yapmıyorum. Daha sonra bana karakter kodlamasını sordu. İstersem utf-8 çalışabilirim veya latin çalışabilirim utf-8 çalışabilmem için tüm dosyalarımı utf-8 olarak çalışmam ve veritabanımıda utf-8 olarak oluşturmam gerekir. Diğer bir seçenek olarak latin5 i seçebiliriz veya latin1 i
Global olması ve daha sonra problem yaşamamız için Ben bunu elle utf-8 olarak tanımladım. Daha sonra mysql i servis olarak kurmak istediğimi sordu. Evet kurmak istiyorum ve bilgisayarım açıldığında otomatik çalışmasını istiyorum. Bin klasörünü mysql in path ine ekleyip eklemek istemediğimi sordu. Eğer buraya path i eklerse daha sonra mysql komutunu import export ederken adresi tekrar tanımlamamıza gerek yok Ve bir sonraki adım olarak güvenlik seçeneklerini düzenleyip düzenlemek istemediğimi soruyor.
Localde çalışacağım için root şifresini değiştirmeyeceğim ve boş olarak kullanacağım. Ve tüm ayarları yaptık. Ayarları çalıştırmasını söylüyorum. Şu an yaptığımız ayarlar mysql e uygulandı ve mysql çalışır halde. Artık sistemimizi php, mysql ve apache beraber kullanabilir hale getirmiş olduk.
İlgili Dosyalar;
Mysql Kurulumu
Php Kulumu
Apache Kurulumu