PHP, MySQL ve APACHE
Pazar, 04 Mayıs 2008
Apache, PHP ve mySQL`in son versiyonlarını bilgisayarınıza indirdikten sonra kurulumu şu şekilde yapabilirsiniz :
1- tar zxvf apache_1_3_9.tar.gz
2- tar zxvf mysql-3.22.27-pc-linux-i686.tar.gz
3- tar zxvf php-4_0b3_tar.gz
Daha sonra işimiz kolaylaşsın diye sembolik linkler yaratalım .
4- ln -s mysql-3.22.27-pc-linux-i686 mysql
5- ln -s apache_1.3.9 apache
6- ln -s php-4_0b3 php4
mySQL, Apache ve PHP den bağımsız kurulduğu için öncelikle onu kuralım.
7- cd mysql
8- scripts/mysql_install_db
9- bin/safe_mysqld &
..ve mySQL deamon` ini başlatalım. Bilgisayarın her açılışında kendiliğinden başlaması için sistem
açılış dosyasına (Slackware için /etc/rc.d/rc.local dosyasina) bir ekleme yapalım.
10- /etc/rc.d/local.rc (local.rc dosyası açılış sırasında okunan dosyalardan biridir. Fakat değişiklinux dağıtımlarında bu dosyanın ismi ve bulunduğu yer farklı olabilir) dosyasının sonuna ;
/bin/bash -c “cd /usr/local/mysql ; ./bin/safe_mysqld &
satırını ekleyin.
Şimdi de sıra Apache ve PHP ikilisini kurmaya geldi.
11- cd ../apache
12- ./configure
13- cd ../php
14- ./configure –with-mysql=../mysql –with-apache=../apache
–enable-track-vars 15- make
16- make install
17- cd ./apache
18- ./configure –prefix=/net –activate-module=src/modules/php4/libphp4.a
Bu adımda zaten kullanmakta olduğunuz bir httpd varsa yukarıdaki “–prefix=/net” yerine apache`nin kurulu olduğu dizinin ismini yazın. Örneğin kendi bilgisayarım için “–prefix=/var/lib/apache” yazmalıydım.
Bu aşamada eski ayarlarını korumak isteyenler make install komutunu kullanmak yerine apache/src`nin altındaki httpd binary` sini çalışmakta olan apache binary` si ile değiştirmeliler. Örneğin kendi bilgisayarım için
cp /var/lib/apache/bin/httpd /var/lib/apache/bin/httpd.yedek
cp src/httpd /var/lib/apache/bin
yazmam gerekliydi. Yukarıda önce eski httpd deamon` nin bir yedeğini aldık. Ardından yeni httpd`yi eskisinin üzerine kopyaladık. Fakat burada dikkat edilmesi gerekli bir konu var. Apache, bir çok linux sürümünde bilgisayar açıldığında başlayan bir daemon olarak çalışır. Bu nedenle apache üzerinde yapacağınız değişikliklerden önce, httpd` yi durdurmanız gereklidir. Bunu da (çalışmakta olan) apache/bin dizininin içinde “./apachectl stop” komutuyla yapabilirsiniz.
Eger 16. maddeyi anlayamadım derseniz kısaca “make install” komutu işinizi görür. Bu komutla beraber /net adinda bir klasör yaratılacak ve içine gerekli dosyalar kopyalanacaktır.S
ıra geldi içine PHP`yi gömdüğümüz yeni httpd deamon` ini çalıştırmaya…
Öncelikle eski httpd daemon`unu
19- make
20- make install
21- /net/bin/apachectl restart
komutu ile durdurup yeni httpd`yi başlatalım.
22- /etc/rc.d/rc.http
dosyasının içinde muhtemelen”/var/lib/apache/sbin/apache start” gibi bir ifade vard
ır. Onu şu şekilde değiştirin ;
#/var/lib/apache/sbin/apache start
/net/bin/apachectl start
Bu sayede bir terslik olursa ilk satırın başındaki diyezi ikinci satıra koyup eski ayarlarınızı
kullanmanız mümkün olur.
23- Apache`nin PHP sayfalarını anlayabilmesi için /net/conf/httpd.conf dosyasındaki (Klasör isminin netile başlamasının sebebi 18. adımda –prefix=/net komutu kullanmamız yani klasör olarak net
ismini seçmemiz)
#AddType application/x-httpd-php3 .php3
#AddType application/x-httpd-php3-source .phps
satırlarını su satırlarla değiştirin ;
AddType application/x-httpd-php .php .php3
AddType application/x-httpd-php-source .phps
Eğer bu satırlar yoksa httpd.conf` un içinde herhangi bir yere ekleyebilirsiniz. Bu adım da bittikten sonra PHP, mySQL ve Apache kullanıma hazır hale geliyor.
İlk Örnek
Eğer su ana kadar herşeyi yukarıda anlatıldığı gibi yaptıysanız muhtemelen asağıdaki uygulamamız
da çalışacaktır.PHP ile haz
ırlanmış web sayfalarının uzantısının .php şeklinde olması gerekli. Bunu gözönünde
bulundurarak bundan sonraki tüm örneklerimizi /net/htdocs/ dizini altına (htdocs dizini, apache` nin httpd.conf dosyasında bir değişiklik yapılmazsa web sayfalarını tuttuğu dizindir) kaydedeceğiz.
Aşağıdaki örneği o2.php olark kaydedelim;
<?php
echo “<center>Merhaba Dünya</center>”;
?>
Tahmin edersiniz ki ekran çıktısı;
Merhaba Dünya şeklinde olacaktır. Nereden göreceğim bu çıktıyı derseniz http://localhost/o2.phpadresini taray
ıcınıza yazıp görebilirsiniz. Burada <center></center> komutu gereği yazı ortalanmıştır.
Echo komutu ise tırnak işaretinin içindeki metni ekrana basar. Eğer sayfanın HTML kodunabakarsan
ız, sadece;
<center>Merhaba Dünya</center>
yazısını görürsünüz. Daha önce de bahsettiğimiz gibi kullanıcı hiçbir şekilde PHP ile ilgili bir
komut görmemektedir.
Ekrana “Merhaba Dünya” da yazdırdığımıza göre geriye pek birşey kalmadı demektir.