Please download to get full document.

View again

of 9
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.

PHP, MySQL ve DSO Destekli Apache Kurulumu

Category:

Biography

Publish on:

Views: 0 | Pages: 9

Extension: PDF | Download: 0

Share
Related documents
Description
PHP, MySQL ve DSO Destekli Apache Kurulumu İÇİNDEKİLER Giriş Mysql Kaynak Koddan Kurulum Mysql Rpmden Kurulum Aache Kurulum Apache Dso Destekli Kurulduğunun Test Edilmesi
Transcript
PHP, MySQL ve DSO Destekli Apache Kurulumu İÇİNDEKİLER Giriş Mysql Kaynak Koddan Kurulum Mysql Rpmden Kurulum Aache Kurulum Apache Dso Destekli Kurulduğunun Test Edilmesi Pph Gd Destekli Kurulum Zlib Kurulumu Libpng Kurulumu Freetype Kurulumu Jpeg Kurulumu Gd Kurulumu Apache Pph Konfigurasyonu Php Gd Desteğinin Test Edilmesi Php Gd Desteğinin Örnek Kodla Test Edilmesi 1. GİRİŞ Bu yazıda Apache (DSO), Php-4.4 (gd), Mysql-4.1 kurulumu anlatılacaktır.kurulumlar Fedora Core 3 işletim sistemi üzerinde yapılmıştır. Benzer sistemlerde de kurulum bu yazıdaki gibi olacaktır.kurulumlarda paketlerin versiyonları belirtilmiştir.isteğe bağlı olarak üst sürümlerle de kurulum yapılabilir.tavsiye edilen kararlı (stable) sürümlerin kurulmasıdır. Paketlerin indirildiği dizin olarak /usr/local/src dizini seçilmiştir.isteğe bağlı olarak değiştirilebilir. Bu makalede Kurulumdan önce bütün paketler /usr/local/src dizinine indirildiği kabul edilmiştir. Apache güçlü, sağlam, yetenekli ve esnek bir web sunucusudur. Apache nin modüler yapısı ona daha da esneklik ve güç katmıştır. Apache de modülleri kurmanın iki yolu vardır birincisi apache ile birlikte kurulum esnasında derleyerek kurmak. Bu kurulum yöntemi ile apache den elde edilebilecek en iyi performans elde edilir ancak daha sonra başka bir modül eklemek istenildiğinde veya eklenen modüllerden birinde güncelleme yapılmak istediğinde apache ile birlikte yeniden kurulum yapılması gerekir.diğer yöntem ise modülleri DSO (Dynamically Shared Object dinamik paylaşımlı nesne) olarak eklemektir.bu kurulum yönteminde Apache ye DSO özelliği kurulum sırasında eklenir ve daha sonra eklemek istenilen modüller Apache yi yeniden derlemeden kurulabilir 1.2.1 MYSQL KAYNAK KODDAN KURULUM Mysql kaynak koddan kurulabileceği gibi rpm paketleriyle de kurulabilir.kurulum için önerilende rpm paketlerinden yapılmasıdır.rpm paketleri adresinden temin edilebilir.yada Fedora Core ile gelen paket yöneticisi olan yum ilede Mysql rpm tabanlı kurulabilir. Kurulum için gerekli paketler adresinden elde edilebilir.kurulum hem kaynak koddan hemde rpm paketlerinden gerçekleştirilmiştir.aşağıda kaynak koddan kurulum için gerekli adımlar toplu halde gösterilmiştir. # groupadd mysql # useradd -g mysql mysql # tar zxvf mysql tar.gz # cd mysql #./configure --prefix=/usr/local/mysql install # cp support-files/my-medium.cnf /etc/my.cnf # cd /usr/local/mysql # bin/mysql_install_db --user=mysql # chown -R root. # chown -R mysql var # chgrp -R mysql. # bin/mysqld_safe --user=mysql & MYSQL RPMDEN KURULUM Mysqli yum paket yöneticisi ile kurmak için # yum install mysql-devel # yum install mysql-server komutlarının verilmesi yeterli olacaktır.eğer burada aşağıdaki gibi bir uyarı alınırsa eğer You have enabled checking of packages via GPG keys. This is a good thing. However, you do not have any GPG public keys installed. You need to download the keys for packages you wish to install and install them. You can do that by running the command: rpm --import public.gpg.key For more information contact your distribution or package provider. # rpm --import /usr/share/doc/fedora-release-3/rpm-gpg-key* komutu ile bu sorunu çözülebilir.burda yum paket yöneticisinin ayrıntılarına girilmeyecektir.ayrıntı için adresindeki yazıya bakılabilir. # service mysqld start komutu ile mysql i başlatılır # service mysqld stop komutu ilede mysql i durdurulur # service mysqld status komutu ilede mysqlin durumu hakkında bilgi edinilebilir. 1.3 APACHE KURULUMU Apache kaynak kodları adresinden temin edilebilir.indirilen paketler /usr/local/src dizinine kopyalanır. # tar zxvf apache_ tar.gz # cd apache_ #./configure --prefix=/usr/local/apache --datadir=/var/www --enablerule=shared_core --enable-module=so install Bir hata alınmadıysa eğer apache /usr/local/apache dizini altına kurulmuş olmalıdır.aşağıda kurulum seçeneklerinin ne anlama geldiği anlatılmıştır --prefix= apachenin hangi dizin altına kurulacağını belirtmek içindir.seçimlik bir parametredir --enable-rule=shared_core ve --enable-module=so seçenekleri ise apachede DSO yu etkinleştirmek içindir APACHE DSO DESTEKLİ KURULDUĞUNUN TEST EDİLMESİ Apache nin DSO olarak kurulup kurulmadığını # grep DSO /usr/local/apache/conf/httpd.conf komutu verildiğinde ; # Dynamic Shared Object (DSO) Support # To be able to use the functionality of a module which was built as a DSO you # details about the DSO mechanism and run `httpd -l' for the list of already # it yourself with a LoadModule [see the DSO paragraph in the 'Global. gibi bir çıktı olacaktır.daha teknik olarak ise /usr/local/apache/bin/httpd -l komutu verilerek anlaşılabilir. # /usr/local/apache/bin/httpd l Compiled-in modules: http_core.c mod_env.c mod_log_config.c mod_mime.c mod_negotiation.c mod_status.c mod_include.c mod_autoindex.c mod_dir.c mod_cgi.c mod_asis.c mod_imap.c mod_actions.c mod_userdir.c mod_alias.c mod_access.c mod_auth.c mod_so.c mod_setenvif.c # Eğer mod_so.c çıktısı alınıyorsa DSO destekli apache kurulumu tamamlanmış demektir.apache'nin DSO ile kurulumunun ardından # /usr/local/apache/bin/apachectl start komutu ile apache başlatılabilir. # ps -auwx grep 'httpd' komutu ilede çalışan apache süreçleri izlenebilir. Apache default olarak nobody kullanıcı ve grup haklarıyla çalıştırılır.başka bir kullanıcı ve grup haklarıyla apache yi çalıştırmak istiyorsanız eğer /usr/local/apache/conf/httpd.conf dosyasındaki User Group değişkenlerini yeni oluşturduğunuz kullanıcı ve grup değişkenleri ile değiştirmeniz gerekmektedir Örneğin apache yi www gurubu ve www kullanıcısı ile çalıştırılmak istenirse eğer,önce www grubunu ve www kullanıcısının oluşturulması gerekmektedir. # groupadd www # useradd g www c Apache Server d /var/www s /sbin/nologin www ve arkasından /usr/local/apache/conf/httpd.conf içerisinde User nobody Group nobody Olan satırları n User www Group www Olarak değiştirilmesi gereklidir.ve apache nin değişiklikleri anlaması için yeniden başlatmak gereklidir. # /usr/local/apache/bin/apachectl restart komutu ile apache yeniden başlatılabilir. # ps auwx grep httpd apache nin yeni ayarlarla çalıştığı görülebilir. 1.4 PHP GD DESTEKLİ KURULUM Php ye gd desteği vermek için gd'nin ihtiyaç duyduğu paketlerin kurulması gerekmektedir. Bunlar zlib, libpng, jpeg ve freetype paketleridir../configure komutunun çıktısında fontconfig ve xpm librarylerinide isteytecektir.eğer bu libraryleri kullanılmak isteniyorsa eğer bu paketlerin kurulması gereklidir.zlib ve libpng paketleri adreslerinden temin edilebilir. Temin edilen paketler /usr/local/src dizini altına kopyalanır ZLİB KURULUMU # tar zxvf zlib tar.gz # cd zlib #./configure shared install LİBPNG KURULUMU # tar zxvf libpng config.tar.gz # cd libpng config/scripts/ # cp makefile.linux../makefile # cd.. test bir hata almadıysanız eğer install JPEG KURULUMU jpeg library si için ftp://ftp.uu.net/graphics/jpeg/ adresinden temin edilebilir.bu adresden jpegsrc.v6b.tar.gz dosyası indirilir.eger daha yeni bir sürümü varsa jpegsrc.vnb.tar.gz olarak görülecektir.n burada versiyon numarasıdır. # tar zxvf jpegsrc.v6b.tar.gz # cd jpeg-6b/ #./configure enable-shared install FREETYPE KURULUMU freetype kurulumu için gerekli paketler adresinden temin edilebilir. # tar jxvf freetype pre tar.bz2 # cd freetype pre #./configure install Şimdi gd kurulumu yapılacak. 1.5 GD KURULUMU adresinden gd paketini temin edip yine /usr/local/src dizinine indirin # tar zxvf gd tar.gz # cd gd #./configure install şimdide php kurulumunu yapalım.php yi adresinden temin edebilirsiniz. paketi /usr/local/src dizinine indirin ve aşağıdaki adımları uygulayın burada diğer kurulumlardan farklı olarak başka bir parametre kullanılacak apxs.nedir apxs?.kısaca DSO kurulum için apache ile beraber gelen bir araç olarak tarif edilebilir. # tar zxvf php tar.gz # cd php #./configure --with-apxs=/usr/local/apache/bin/apxs --withzlib --with-gd --with-mysql --with-mysql paremetresi ile mysql!in kurulu olduğu dizinin /usr/local/src olduğunu gösteriliyor.eğer bu kurulum yeri farklı bir yerdeyse o dizinin gösterilmesi gerekmektedir. install 1.6 APACHE PHP KONFİGURASYONU php kurulumundan sonra httpd.conf dosyası herhangi bir editörle açılır. # vi /usr/local/apache/conf/httpd.conf LoadModule php4_module libexec/libphp4.so satırı eğer yoksa eklenir. Yine httpd.conf dosyasına aşağıdaki satırlar eklenir. # vi /usr/local/apache/conf/httpd.conf AddType application/x-httpd-php.php.phtml AddType application/x-httpd-php-source.phps Ayrıca DirectoryIndex satırının yanına index.php satırınında eklenmesi gerekmektedir.bu sayede görmek istenilen dizin içinde index.php dosyası varsa dizinadı/index.php yazılmadan index.php calıştırılacaktır 1.7 PHP GD DESTEĞİNİN TEST EDİLMESİ Şimdi ise php gd destekli çalıştığını görmek için ufak birkaç ayarlamanın yapılması gerekmektedir.document Root default olarak bu kurulum sonunda /var/www/htdocs olarak gelecektir./var/www/htdocs dizini altında index.php adında bir dosya oluşturulup index.php dosyasının içine aşağıdaki satırların girilmesi gerekmektedir. ? Phpinfo(); Web tarayıcısına yada ip adresi girilir.eğer ekrana phpinfo() fonksiyonun çıktısı geliyorsa php çalışıyor demektir.ayrıca gelen ekranda aşağıdaki gibi çıktı varsa gd desteğininde aktif olduğu anlaşılabilir.. 1.8 PHP GD DESTEĞİNİN ÖRNEK KODLA TEST EDİLMESİ Son olarak da php ile gd kütüphanesini kullanan bir örnek verilmiştir..aşağıdaki php kodları index.php dosyası adı ile kaydedilir ve Document Root olan /var/www/htdocs altına kopyalanır. ?php // This array of values is just here for the example. $values = array( 23 , 32 , 35 , 57 , 12 , 3 , 36 , 54 , 32 , 15 , 43 , 24 , 30 ); // Get the total number of columns we are going to plot $columns = count($values); // Get the height and width of the final image $width = 300; $height = 200; // Set the amount of space between each column $padding = 5; // Get the width of 1 column $column_width = $width / $columns ; // Generate the image variables $im = imagecreate($width,$height); $gray = imagecolorallocate ($im,0xcc,0xcc,0xcc); $gray_lite = imagecolorallocate ($im,0xee,0xee,0xee); $gray_dark = imagecolorallocate ($im,0x7f,0x7f,0x7f); $white = imagecolorallocate ($im,0xff,0xff,0xff); // Fill in the background of the image imagefilledrectangle($im,0,0,$width,$height,$white); $maxv = 0; // Calculate the maximum value we are going to plot for($i=0;$i $columns;$i++)$maxv = max($values[$i],$maxv); // Now plot each column for($i=0;$i $columns;$i++) { $column_height = ($height / 100) * (( $values[$i] / $maxv) *100); $x1 = $i*$column_width; $y1 = $height-$column_height; $x2 = (($i+1)*$column_width)-$padding; $y2 = $height; imagefilledrectangle($im,$x1,$y1,$x2,$y2,$gray); // This part is just for 3D effect } imageline($im,$x1,$y1,$x1,$y2,$gray_lite); imageline($im,$x1,$y2,$x2,$y2,$gray_lite); imageline($im,$x2,$y1,$x2,$y2,$gray_dark); // Send the PNG header information. Replace for JPEG or GIF or whatever? header ( Content-type: image/png ); imagepng($im); Web tarayıcısına yada ip adresi girildiğinde aşağıdaki gibi bir çıktı alınıyorsa çalışıyor demektir.. Gökhan ALKAN
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks