ionCube loader adalah PHP extension yang digunakan untuk mendekode skrip PHP yang dikodekan (encoded) oleh paket IonCube PHP Encoder. Sangat berguna untuk melindungi source code aplikasi berbasis PHP dan mencegahnya agar tidak terlihat, diubah, dan dijalankan pada komputer yang tidak berlisensi.

ionCube loader adalah utilitas enkripsi/dekripsi untuk aplikasi berbasis PHP yang juga akan mempercepat waktu load halaman.

Dalam tutorial ini, kita akan membahas cara mengaktifkan loader ionCube di PHP pada CentOS 8.

Prasyarat

Instal Apache dan PHP

Sebelum memulai, instal PHP dan Apache di sistem CentOS 8. Anda dapat menginstalnya dengan menjalankan perintah berikut:

yum install httpd php php-common php-cli -y

Setelah semua paket diinstal, periksa versi PHP dengan perintah berikut:

php --version

Anda harus mendapatkan output berikut:

PHP 7.2.11 (cli) (built: Oct  9 2018 15:09:36) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

Download ionCube Loader

Pertama, download versi terbaru dari IonCube Loader dari situs resminya. Anda dapat mengunduhnya dengan perintah wget berikut:

wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz

Setelah unduhan selesai, ekstrak file yang diunduh dengan perintah berikut:

tar xzf ioncube_loaders_lin_x86-64.tar.gz

Berikutnya, list isi direktori ioncube dengan perintah ls untuk melihat isi dari file archive yang telah kita extract tadi:

ls ioncube

Anda akan melihat output berikut:

ioncube_loader_lin_4.1.so     ioncube_loader_lin_5.0_ts.so  ioncube_loader_lin_5.4.so     ioncube_loader_lin_7.0_ts.so  LICENSE.txt
ioncube_loader_lin_4.2.so     ioncube_loader_lin_5.1.so     ioncube_loader_lin_5.4_ts.so  ioncube_loader_lin_7.1.so     loader-wizard.php
ioncube_loader_lin_4.3.so     ioncube_loader_lin_5.1_ts.so  ioncube_loader_lin_5.5.so     ioncube_loader_lin_7.1_ts.so  README.txt
ioncube_loader_lin_4.3_ts.so  ioncube_loader_lin_5.2.so     ioncube_loader_lin_5.5_ts.so  ioncube_loader_lin_7.2.so     USER-GUIDE.pdf
ioncube_loader_lin_4.4.so     ioncube_loader_lin_5.2_ts.so  ioncube_loader_lin_5.6.so     ioncube_loader_lin_7.2_ts.so  USER-GUIDE.txt
ioncube_loader_lin_4.4_ts.so  ioncube_loader_lin_5.3.so     ioncube_loader_lin_5.6_ts.so  ioncube_loader_lin_7.3.so
ioncube_loader_lin_5.0.so     ioncube_loader_lin_5.3_ts.so  ioncube_loader_lin_7.0.so     ioncube_loader_lin_7.3_ts.so

Aktifkan Modul ionCube Loader di PHP

Selanjutnya, ktia perlu menemukan lokasi direktori ekstensi PHP. Anda dapat melakukannya dengan perintah berikut:

php -i | grep extension_dir

Anda akan mendapatkan output kurang lebih seperti berikut

extension_dir => /usr/lib64/php/modules => /usr/lib64/php/modules

Now, copy the ionCube loader module from the ioncube directory that matches your PHP version to the PHP extension directory:

Sekarang, copy modul ionCube loader yang cocok berdasarkan versi PHP dari direktori ioncube ke direktori ekstensi PHP:

cp ioncube/ioncube_loader_lin_7.2.so /usr/lib64/php/modules/

Selanjutnya, Anda harus mengaktifkannya dengan mengedit file php.ini:

nano /etc/php.ini

Tambahkan baris berikut di akhir file:

zend_extension = /usr/lib64/php/modules/ioncube_loader_lin_7.2.so

Selanjutnya, restart Apache untuk menerapkan perubahan:

systemctl restart httpd

Verifikasi Instalasi ionCube Loader

Selanjutnya, verifikasi modul PHP IonCube Loader dengan perintah berikut:

php -v

Jika instalasi berhasil, Anda akan mendapatkan output berikut:

PHP 7.2.11 (cli) (built: Oct  9 2018 15:09:36) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with the ionCube PHP Loader + ionCube24 v10.3.9, Copyright (c) 2002-2019, by ionCube Ltd.

Anda juga dapat memverifikasinya dengan perintah berikut:

php -m

Anda akan melihat output berikut:

[PHP Modules]
bz2
calendar
Core
ctype
curl
date
exif
fileinfo
filter
ftp
gettext
hash
iconv
ionCube Loader
libxml
openssl
pcntl
pcre
Phar
readline
Reflection
session
sockets
SPL
standard
tokenizer
zlib

[Zend Modules]
the ionCube PHP Loader + ionCube24

Output di atas mengkonfirmasi bahwa ekstensi PHP ionCube telah ter load di server.

Pada poin ini, instalasi dan konfigurasi modul PHP ionCube telah berhasil diaktifkan di server Anda.