Tidak membeli Plesk atau cPanel di Linux bukan berarti tidak bisa membuat vps tersbut menjadi hosting untuk website. Alternatifnya, anda bisa menggunakan LAMP pada Centos Linux. Pada dasarnya LAMP adalah kepanjangan dari Linux, Apache, MySQL, PHP/Perl/Python. Artinya komponen yang dibutuhkan untuk membangun suatu web server dan bisa digunakan.
Menggunakan Centos 7
Tutorial kali ini akan menggunakan centos 7 minimal sebagai bahan percobaan. Kita akan memasang Apache, PHP7, dan MariaDB. Pastikan anda mempunyai catatan seperti notepad untuk menuliskan user dan password nanti.
1. Install EPEL
Kita akan menginstall epel repository.
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY* yum -y install epel-release
2. Install MariaDB
Pada dasarnya untuk database kami merekomendasikan mariadb. Kita install terlebih dahulu.
yum -y install mariadb-server mariadb
Kemudian pastikan service mariadb akan terus berjalan walau server kita ter-restart. Pastikan service mariadb sudah berjalan.
systemctl start mariadb.service systemctl enable mariadb.service
service mariadb start
Mari kita setup password root databasenya. Pastikan anda catat passwordnya di notepad komputer anda, lalu save! Gunakan password yang sudah dan tidak mudah ditebak yg berisi perpaduan huruf, angka, dan simbol.
mysql_secure_installation
3. Install Apache
Secara umum untuk Centos 7 akan menggunakan Apache versi 2.4. Kita mulai install.
yum -y install httpd
Pastikan service Apache berjalan terus meski vps sudah di restart.
systemctl start httpd.service
systemctl enable httpd.service
service httpd start
Pada tahap ini, kita akan menambah rules firewall pada firewalld server. Untuk Centos minimal, biasanya tidak ada. Jika tidak ada, bisa di skip saja.
firewall-cmd --permanent --zone=public --add-service=http firewall-cmd --permanent --zone=public --add-service=https firewall-cmd --reload
4. Install PHP7
Selanjutnya, kita akan memasang php7. Mengapa kita pilih versi 7, karena versi 5.6 sudah sangat outdated. Pertama, kita tambahkan terlebih dahulu repo REMI.
rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
Kemudian installkan yum manager.
yum -y install yum-utils
Kemudian update.
yum -y update
Untuk memasang php versi terbaru dan stable, yaitu php73 maka gunakan ini :
yum-config-manager --enable remi-php73
yum -y install php php-opcache
Lalu restart proses httpdnya agar ada efek ke php.
systemctl restart httpd.service
5. Install php-mysql
Agar MySQL bisa diakses dengan extensi php, maka kita harus memasang beberapa extension terlebih dahulu. Untuk website sederhana, pack ini sudah cukup.
yum -y install php-mysqlnd php-pdo
Namun untuk package seperti WordPress, maka perlu di install tambahan php extension lainnya.
yum -y install php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-soap curl curl-devel
Setelah itu anda restart lagi httpdnya.
systemctl restart httpd.service
6. Test Versi PHP
Terkahir, pastikan kita sudah memasang versi php yang benar. Caranya adalah dengan melakukan verifikasi. Buat file info.php yang berisi check script php version di /var/www/html. Isi script tersebut adalah sebagai berikut.
<?php
phpinfo();
?>
7. Install phpmyadmin
Langkah terakhir adalah memasang phpmyadmin yang berfungsi untuk konfigurasi database baik itu export maupun import pada server anda. Karena phpmyadmin ini rentan dengan bruteforce login yang dapat menyebabkan server anda bermasalah hingga down, kami menyarankan untuk memasangnya dengan nama yang berbeda agar lebih aman.
Install phpmnyadmin
yum -y install phpMyAdmin
Edit file :
/etc/httpd/conf.d/phpMyAdmin.conf
Kemudian cari pada baris Alias dan modifikasi dari :
Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin
Menjadi
Alias /p7x /usr/share/phpMyAdmin
Alias /p7x /usr/share/phpMyAdmin
Dengan demikan, untuk membuka phpmyadmin anda harus menggunakan path fodler /p7x. Contoh : http://domain/p7x
Lalu comment semua baris pada di bawah ini. Kemudian tambahkan Require all granted seperti di bawah ini. Mulai comment out (#) pada baris 15 hingga 19.
# Apache 2.4
#<RequireAny>
#Require ip 127.0.0.1
#Require ip ::1
#</RequireAny>
Require all granted
Kemudian restart apache.
systemctl restart httpd.service
Oke selesai.
Kini server Centos 7 anda sudah dilengkapi dengan LAMP. Anda bisa mulai mengisi file dokumen di /var/www/html/ menggunakan SSH langsung atau FileZilla via SFTP.