Genel

Freebsd Apache Mysql Php, Ioncube, Ftp Kurulumu

  Aslında sadece WHMCS şeklinde gidecektim ama bende kurulu olmadığı için mecbur bu şekilde davranmam gerekti. 
  Normal şartlar altında apache gibi servisleri kurarken tek tek modüllere bakmamız gerekecektir. Zira kullanılmayan her modül hem servisin yavaş çalışmasına etki eder, hemde donanıma beyhude iş çıkartacaktır. Fakat amacımız sadece WHMCS kurmak olduğundan bu durumu önemsemiyoruz. Daha sonra farklı bir yazıda tüm Apache modüllerine hatta tüm Php bileşenlerine göz gezdiririm. 
  Servis şeklinde çalışan (mail, httpd, smtp, veritabanı vs) neredeyse tüm yazılımlar çalışmak için veya kurulum için Perl diline ihtiyaç duyarlar. Bu sebeple perl dilinin sistemde kurulu olması gerekir. Freebsd port ağacının güzel bir yanı, kurulum esnasında neye ihtiyacı var ise onu portlardan kurmasıdır. Yani kısaca aslında perl dilini kurmamıza gerek yok, çünkü apache veya php dilini kurarken kendisi kuracak. 

WHMCS sistem gereksinimleri kendi web sitesinde şu şekilde verilmiş;

  • PHP
  • Json
  • GD2
  • Curl (ssl desteği ile)
  • Php bellek limiti 64mb
  • Mysql
  • Ioncube Loaders
Web sitesinde Php versiyonu için 5.2 şeklinde demiş, bloğunda 5.3 ve 5.4 için güncellemeler var demiş. Fakat 5.5 için şu anda (ioncube desteklemediğinden) destek yoktur demiş. Bu sebeple biz Php 5.3 kuralım, temiz olsun.
cd /usr/ports/lang/php53
make install clean

Make komutu bir paketi kurmak için hazır hale getirir. Make install ise o yazılımı kurar. Clean komutu ile beraber verirsek, yazılımı kurmak için ihtiyaç duyduğu, diğer yazılımları sistemden siler. Misal bu kurulumdan sonra gtk yazılımını silecektir. Make install komutu ile beraber karşımıza bir ncurses ekranı çıkacaktır. 
Bu şekilde işaretli olursa şimdilik işimizi görecektir.  Build Apache module seçeneği işaretli olursa aynı zamanda Apache yazılımını da sisteme kuracaktır. Whmcs debug destekli çalışmıyor, bu yüzden işaretlemiyoruz. Bu komutu verdikten sonra karşımıza bir çok defa Ncrurses ekranı çıkacaktır. Şu an için varsayılan ne işaretli ise o kalırsa WHMCS yazılımını kurmak için bize yeterli gelecektir. Donanım özelliklerine göre kurulum 45 – 60 dakika içerisinde bitecektir. Kurulum bitince;
echo ‘apache24_enable=”YES”‘ >> /etc/rc.conf
yaparak Apache’nin başlangıçta çalışmasını sağlıyoruz. Ayrıca bunu yazmadan apache çalışmayacaktır. 

AH00557: httpd: apr_sockaddr_info_get() failed for deneme.local

AH00558: httpd: Could not reliably determine the server’s fully qualified domain name, using 127.0.0.1. Set the ‘ServerName’ directive globally to suppress this message

Yukarıdaki şekilde bir hata alırsak önemsememize gerek yok. Bu hata apache’nin bizim sunucu ismimizi (hostname) beğenmediğinden kaynaklanıyor. Daha doğrusu sunucu isminin karşılığında bir ip olmadığından kaynaklanıyor. hostname sunucuismi.com yaparak değiştirebilir veya /etc/hosts dosyasına sunucumuzun ismini yazarak hatayı almamayı sağlayabiliriz.

Php dilinin sağlıklı şekilde kurulup kurulmadığını test etmek istersek, php -v komutu görüntüleyebiliriz. Çıktı aşağıdaki şekilde olacaktır. 
Artık sunucu ismini(dns tanımladı isek) veya ipsini tarayıcımıza yazıp Apache’nin “It Works!” çıktısını görüntüleyebiliriz. 
Apache servisine php desteğini vermek için ise aşağıdaki satırları httpd.conf dosyasına yazmamız gerekecektir. Aksini belirtilmediği sürece Apache /usr/local/etc dizinine kurulacaktır.

ee /usr/local/etc/apache24/httpd.conf
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

Şimdi /usr/local/www/apache24/data dizinine bir phpinfo dosyası yaratıp, php’nin çalışıp/çalışmadığını kontrol edelim. 

<?php
phpinfo();
?> 

 Eğer kurulumda bir hata yaşamadıysak, tarayıcıya http://ip/phpinfo.php şeklinde yazdığımızda aşağıdaki sayfa gelecektir. 

php.ini dosyasında ufak bir değişiklik yapmamız gerekiyor. 

cd /usr/local/etccp php.ini-development php.ini

Bu dosyayı text editörü ile açıp, date.timezone =Europe/Istanbul şeklinde değiştirmemiz gerekiyor.

Şimdi ise sıradan php bileşenleri kurmak var. Php bileşenleri port ağacında php ile aynı dizinde bulunmaktadır. 

cd /usr/ports/lang/php53-extensions/

Make config komutu ile ncurses ekrandan bize gerekli olan ve en sık kullanılan bileşenleri işaretleyelim. Benim kurmak istediğim bileşenler şu şekilde.

BCMATH – BZ2  – CALENDAR  – CTYPE  – CURL –  FILEINFO  – FTP – GD  – GETTEXT – GMP  – HASH  -ICONV –  JSON  – MBSTRING – MCRYPT –  MYSQL –  MYSQLI – OPENSSL – RECODE – SESSION  – SNMP –  SOAP –  TIDY  – TOKENIZER  – XML  – XMLREADER –  XMLRPC – XMLWRITER –  XSL –  ZIP –  ZLIB

WHMCS üç tane bileşen yazdı, biz neden bunları kuruyoruz peki? Mesela WHMCS’nin yazmadığı php-mysql var veya sesion var. Bunlar o yazmasa da bize lazım olacak bileşenler. Ayrıca xmlrpc gibi kütüphaneleri de daha sonra ekleyeceğimiz modüller için kuruyoruz. Ha bu modüllerin hepsi port ağacında farklı yerlerde de tek başına bulunuyor bu arada. Komutu tekrar verip kurmaya başlıyoruz. “make install clean”.  Yine bir çok ncurses ekranı karşımıza gelecektir. Şu an için sadece varsayılan olanları seçsek yeterli olacaktır. Gd kütüphanesi kurulurken varsayılan olarak “Japon dilleri kütüphanesi” desteğini aktif etmiyoruz, yoksa GD problem yaşatıyor.

 Eğer herhangi bir problem çıkmadıysa, apache servisini restart ettiğimizde, phpinfo sayfasında, kurduğumuz tüm bileşenleri görmemiz gerekiyor.

Mysql Kurulumu


Yine mysql veritabanı kurulumunu da, port ağacı üzerinden yapacağız. 

cd /usr/ports/databases/mysql55-servermake install clean

echo ‘mysql_enable=”YES”‘ >> /etc/rc.conf 

/usr/local/etc/rc.d/mysql-server start 

Ioncube Kurulumu


Biz Freebsd 10 üzerinde çalışıyoruz fakat Ioncube Freebsd 9 için yayınlamış, yinede kurulum yapabiliriz, sağlıklı bir şekilde çalışıyor.

Freebsd 32 Bit Ioncube


fetch komutu ile .tar.gz dosyasını indiriyoruz. 

fetch ioncube.com/ioncube.tar.gz

tar -zxvf ioncube.tar.gz

mkdir -p /usr/local/ioncube/

mv ioncube* /usr/local/ioncube

Şimdi php.ini dosyasında değişiklik yapmamız gerekiyor. 

ee /usr/local/etc/php.ini

zend_extension = /usr/local/ioncube/ioncube_loader_fre_5.3.so

Bu satırı php.ini de en sona ekliyoruz. Farklı bir sürüm var ise, o sürümün .so dosyasını ekleyebiliriz.  Apache servisini restart ediyoruz. Ayrıca loader-wizard.php dosyasından kurulumun olup olmadığını kontrol edebiliriz. Tabi bu dosyayı mv loader-wizard.php /usr/local/www/apache24/data yapıp, dizine taşıyarak.

Ftp Kurulumu

Dosyaları atmak için bir ftp sunucusu lazım olacaktır. Gerçi scp üzerinden de dosyaları atabiliriz veya fetch ile çekebiliriz fakat ftp sunucusu kurup, resimler veya farklı dosyaları atmak daha sağlıklı olacaktır.

Kuracağımız ftp sunucusu Freebsd üzerinde varsayılan olarak gelen bir ftp sunucu programı. Komplike bir yapısı yok ve bizim işimizi şimdilik görecek düzeyde. 

/etc/inetd.conf dosyasını açıyoruz ve aşağıdaki satırın yorumunu kaldırıyoruz.

ftp     stream  tcp     nowait  root    /usr/libexec/ftpd       ftpd -l

/usr/libexec/ftpd -D -ll 

-D parametresi daemon olarak çalışmasını, ll parametresi ise servisin log tutmasını sağlayacaktır. Loglar /var/log/ftpd.log dosyasında saklanır. 
/etc/ftpusers dosyasında bulunan kullanıcılar ftp servisine erişim sağlayamazlar. Ben root olarak dosyaları atacağım için, dosyada bulunan root satırını siliyorum ve bağlanıyorum.

Bu şekilde gidersek bu yazı çok uzamış olacak. Bu şekilde bitirip, WHMCS konusunu farklı bir konuda yazayım.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir