install PHP 5.2 di CentOS 5.5

 

Posted on April 4, 2011 by Arif

Ada satu alasan yang jelas untuk tetap menggunakan PHP 5.2 dibandingkan dengan versi baru 5.3, yaitu karena beberapa fungsi telah ditiadakan di versi 5.3 sedangkan sistem-sistem lama masih banyak yang menggunakannya. Ini daftar fungsi-fungsi yang sudah dihilangkan, dan kebanyakannya masih sangat penting digunakan dibeberapa sistem.

Saya sendiri masih menggunakan/membangun sistem yang berdasarkan framework Codeigniter 1.7.2. yang kalau dijalankan di PHP 5.3 langsung ngadat. Selain itu kebanyakan hosting pun mau ga mau harus tetap dengan versi PHP 5.2. Jadi kalau membangun sebuah server ada baiknya untuk mempertimbangkan versi mana yang akan dipakai.

Kalau di server Debian/Ubuntu bisa dibilang mudah, mungkin karena sudah terbiasa dan di repositorinya, PHP versi 5.2 masih disupport, jadi instalasi bisa langsung lancar-lancar aja. Kebetulan server yang sekarang sedang digunakan adalah CentOS 5.5 jadi agak ribet, selain belum biasa, juga harus tau menggunakan command yum, dan harus ngecek repo yang masih ada PHP 5.2-nya.

Tapi ternyata ga susah-susah amat. Saya oprek-oprek sepertinya ini ada dua cara, atau tiga kalo mau lebih. Tulisan ini untuk catatan saya, silakan koreksi kalau ada yang salah.

Cara pertama dengan menggunakan repo dari Zend. Pertama-tama pastikan sudah tidak ada lagi instalasi PHP versi baru. Kalau masih ada dihilangkan saja.

yum remove php*.*

Kemudian buka yum.conf untuk meng-exclude-kan segala yang berbau php-5.3 di konfigurasi yum.

vim /etc/yum.conf

Tambahkan line berikut menghindari yum untuk menginstal atau me-list yang berkaitan dengan php-5.3.

exclude=php-5.3*, mod-php-5.3*, zend-server-php-5.3*

Kemudian buat file repo dengan nama zend.repo

vim /etc/yum.repos.d/zend.repo

Isi dengan ini:

[Zend]
name=Zend Server
baseurl=http://repos.zend.com/zend-server/rpm/$basearch
enabled=1
gpgcheck=0
[Zend_noarch]
name=Zend Server - noarch
baseurl=http://repos.zend.com/zend-server/rpm/noarch
enabled=1
gpgcheck=0

Setelah itu langsung install saja dengan perintah berikut:

yum install zend-server-php-5.2

Saya pikir ini cara yang paling cepat dan sederhana, yum langsung menginstall semua yang berkaitan dengan php-5.2. Gampang kan? Ya mudah-mudahan dengan cara tadi langsung beres.

Cara kedua, sebenernya sama saja, cuma ini menggunakan repo yang lain lagi. Tetap dengan meng-exclude-kan php-5.3, buat file repo seperti berikut:

vim /etc/yum.repos.d/utterramblings.repo

Isikan dengan ini:

[utterramblings]
name=Jason's Utter Ramblings Repo
baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka

Lihat list repo php yang ada, kemudian install paket yang ada beserta extension-extensionnya:

yum list php

yum install php php-xmlrpc php-imap php-mhash php-mbstring php-mysql
php-xml php-gd php-openssl php-exif php-mcrypt php-soap

Sedangkan cara yang ketiga, harus download dulu source php-5.2 di php.net, kemudian dikompil. Install dulu tools untuk mengompil sourcenya.

yum install php-devel
yum install httpd-devel
yum install libxml2-devel
yum install mysql-devel

Download source php-5.2

wget http://id.php.net/distributions/php-5.2.17.tar.gz

Extract file sourcenya, kemudian masuk ke foldernya:

tar -zxvf php-5.2.17.tar.gz
cd php-5.2.17

Jalankan proses kompil:

./configure --with-apxs2=/usr/sbin/apxs --with-mysql=/usr/local
--with-zlib-dir=/usr --with-mysql=/usr/local --with-kerberos=/usr --enable-cli
--enable-exif --enable-mbstring --enable-mbregex --enable-sockets
--with-curl --with-openssl=/usr --with-xmlrpc --with-xsl=/usr --with-pear
--with-iconv --with-gd --with-jpeg-dir=/opt/local --with-png-dir=/opt/local
--with-freetype-dir=/opt/local

make install

 

 

menggunakannya
This entry was posted in Free/Open Source, Iseng, Programming, Tutorial and tagged , , . Bookmark the permalink.

menggunakannya

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s