openlitespeed

Install OpenLiteSpeed di Centos 7

Posted on

Pada tulisan sebelumnya saya pernah membahas cara install openlitespeed di Ubuntu 20.04, nah kali ini pembahasannya sama hanya saja akan kita install openlitespeed di centos 7. Disini saya rencananya akan membangun sebuah vm (virtual machine) khusus untuk menjalankan blog wordpress. VM akan saya buat di IDCloudhost karena disini harga VM perjamnya cukup murah, bagi yang belum tahu bisa membaca tulisan saya tentang VPS Murah dan Unlimited Bandwidth.

Saya menggunakan sistem operasi centos 7.6 karena versi ini masih akan mendapatkan dukungan update sampai dengan 30 Juni 2024, berbeda dengan centos 8 yang hanya akan mendapatkan dukungan update sampai 31 Desember 2021. Salah satu distro populer yang dapat menjadi alternatif centos ini adalah Almalinux dan Rockylinux.

Dikarenakan ini vm baru jadi saya akan mengupdate dan mengupgrade package/aplikasi yang ada

# yum update && yum upgrade -y

1. Install OpenLiteSpeed

Dilanjutkan dengan menginstall epel-release

# yum install epel-release -y

Tambahkan repositori untuk LiteSpeed

# rpm -Uvh http://rpms.litespeedtech.com/centos/litespeed-repo-1.1-1.el7.noarch.rpm

Kemudian install OpenLiteSpeed

# yum install openlitespeed

Secara default OpenLiteSpeed akan terinstall di dalam directory /usr/local/lsws. Setelah installasi berhasil, kita bisa melakukan check OpenLiteSpeed apakah sudah berjalan.

# systemctl status lsws

Perlu diketahui bahwa OpenLiteSpeed memerlukan dua port sebagai Frontend port 8088 dimana website kita akan diakses dan Backend port 7080 untuk managemen webservernya, pastikan kedua port ini terbuka di firewall dan dapat diakses.

http://<ip_address_server>:8088

2. Install PHP

Selanjutnya agar OpenLiteSpeed bisa menjalankan bahasa pemrograman PHP, sebenarnya kita perlu menginstall aplikasi lsphp yaitu aplikasi PHP yang dirancang khusus untuk OpenLiteSpeed. Disini saya akan menginstall PHP versi 7.3 dari repository litespeed. Tapi karena tadi saat installasi openlitespeed, depedensinya adalah harus menginstall lsphp, maka secara otomatis lsphp 7.3 ikut terinstall.

Namun apabila PHP tidak terinstall secara otomatis kita bisa menginstall PHP secara manual ataupun menginstall PHP dengan versi yang berbeda. Ada berbagai macam versi dari LSPHP (lsphp53, lsphp54, lsphp55, lsphp56, lsphp70, lsphp71, lsphp72, lsphp73, lsphp74, lsphp80) silahkan sesuaikan saja dengan kebutuhan sistem kita, untuk lebih jelasnya bisa membaca dokumentasi dari openlitespeed.

Untuk melihat beberapa versi php yang ada di repository, bisa menggunakan perintah

# yum list lsphp*

Dan jika ingin mengisntall secara manual paket dan modul versi PHP yang diinginkan kita bisa menjalankan perintah

# yum install lsphp73 lsphp73-common lsphp73-gd lsphp73-process lsphp73-mbstring lsphp73-mysqlnd lsphp73-xml lsphp73-opcache lsphp73-json

Berikut ini adalah contoh php 7.3 yang sudah berjalan

Sebagai catatan, jika kita menginstall PHP dari repository litespeed, maka secara default PHP akan berada didalam directory /usr/local/lsws/lsphp7x/bin/lsphp dimana lsphp7x merupakan versi dari PHP yang kita install.

3. Konfigurasi Web Admin OpenLiteSpeed

Seperti yang saya infokan sebelumnya bahwa OpenLiteSpeed terdapat dua antarmuka yaitu bagian frontend pada port 8088 dimana tempat semua website yang kita buat akan diakses oleh semua orang dan antarmuka backend pada port 7080 yaitu sebuah antarmuka dimana kita akan mengelola OpenLiteSpeed (web admin) mulai dari pembuatan virtual host (vhost), melakukan konfigurasi SSL, custom port listening, dan lain-lain. Untuk mengkases halaman backend atau web admin dari OpenLiteSpeed ini, sebelumnya kita perlu melakukan konfigurasi username dan passwordnya terlebih dahulu melalui perintah.

$ sudo /usr/local/lsws/admin/misc/admpass.sh

Setelah selesai kita bisa mengakses halaman backend (web admin) OpenLiteSpeed dengan browser dialamat.

https://<ip_address_server>:7080

Sampai disini proses installasi webserver openlitespeed di centos 7 sepenuhnya sudah selesai semua.

4. Install MariaDB

Langkah selanjutnya tinggal menginstall mariadb sebagai database server untuk wordpress yang akan kita install.

# yum install mariadb-server

Setelah installasi selesai, jalankan servis mariadb

# systemctl start mariadb

Agar servis mariadb dijalankan saat vm boot, jalankan perintah berikut

# systemctl enable mariadb

Set security baru untuk mariadb

# /usr/bin/mysql_secure_installation
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] Y
New password: 
Re-enter new password: 
Password updated successfully!
Reloading privilege tables..
... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] Y
... Success!

Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] Y
... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] Y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] Y
... Success!

Cleaning up...

All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

5. Membuat Database WordPress

Untuk membuat database wordpress yang akan kita deploy, silahkan login ke mariadb

# mysql -u root -p

kemudian buat user dan database baru serta permissionnya untuk wordpress dengan perintah masing-masing :

create database db_wordpress1;
create user 'user_wordpress1'@'localhost' identified by 'password_wordpress1';
grant all privileges on db_wordpress1.* to 'user_wordpress1'@'localhost';
flush privileges; 
exit;

Sampai disini user dan database untuk wordpress sudah siap.

6. Konfigurasi Virtual Host di OpenLiteSpeed

Kita akan menginstall wordpress didalam vhost openlitespeed, secara default vhost bawaan openlitespeed bernama Example dan terletak pada directory /usr/local/lsws/Example/html/. Namun disini saya akan membuat vhost baru dengan nama wordpress1.

# cd /usr/local/lsws
# mkdir wordpress1
# mkdir wordpress1/{html,logs}

Selanjutnya kita akan melakukan melanjutkan konfigurasi vhost melalui web admin openlitespeed. masuk ke halaman Web Admin console > Virtual Hosts > Add untuk membuat virtual hosts baru. Disini kita akan membuat nama virtual host, virtual host root file, dan firtual host configuration file.

Buat konfigurasi seperti gambar diatas kemudian save. Disini karena sebelumnya kita memang tidak membuat file vhconf.conf maka akan muncul error dengan keterangan “file /usr/local/lsws/conf/vhosts/wordpress1/vhconf.com does not exist” di bagian Config File *, nah untuk membuatnya secara otomatis klik saja bagian “CLICK TO CRREATE” yang ada pada bagian sebelah kanan dari tulisan error tadi.

Sebagai catatan dibawah ini adalah beberapa parameter untuk konfigurasi openlitespeed.

  • $SERVER_ROOT = /usr/local/lsws/
    (Default directory openlitespeed)
  • $VH_ROOT = /usr/local/lsws/$VH_NAME
    ini adalah root directory dari virtual host dimana semua folder dan file terkait virtual host berada (seperti log files, CGI scripts, dll). Catatan. Ini bukan document root.
  • Config DIR = /usr/local/lsws/conf/vhosts/$VH_NAME
    Konfiguasi file dari virtual host

Jika sudah silahkan save kembali. Selanjutnya kita akan mengkonfigurasi document root virtual host kita. Lakukan konfigruasi seperti gambar dibawah.

Selanjutnya kita akan mengkonfigurasi logs untuk virtual host openlitespeed.

Konfigurasi security access control.

Enable Rewrite.

Selanjutnya kita akan mengkonfigurasi port listener dan virtual host mapping. Silahkan Akses menu Listeners > default. Dan konfigurasi seperti gambar dibawah. Sebagai catatan saya sebelumnya sudah mempersiapkan domain untuk di konfigurasi dalam virtual host ini.

Sampai disini selesai sudah semua konfigurasi untuk virtual host ktia di openlitespeed. selanjutnya tinggal menginstall wordpress melalui domain yang sudah kita siapkan.

7. Install WordPress

Sebelumnya kita akan download dulu wordpress melalui halaman resminya.

# cd /usr/local/lsws/wordpress1/html
# wget http://wordpress.org/latest.zip
# unzip latest.zip
# mv wordpress/* .

Rubah kepemilikan files dan directory ke Web Server User

# chown -R nobody:nobody /usr/local/lsws/wordpress1/html

Selanjutnya jalankan installasi wordpress melalui browser dengan domain yang sudah kita buat di virtual host openlitespeed.

Selanjutnya tinggal ikuti saja step by step sesuai dengan konfigurasi database yang sudah kita buat sebelumnya, sampai dengan selesai. Sekarang ktia sudah memiliki wordpress yang telah kita konfigurasi dalam virtual host di web server openlitespeed.