How To Install Openlitespeed (OLS) in Oracle Free VPS (Ampere ARM A1) – Step-by-Step Guide

What is Openlitespeed and why should you use it?

OpenliteSpeed is an open-source, lightweight, high-performance HTTP server. It is designed to be fast, secure, and easy to use. 

OpenliteSpeed is a drop-in replacement for the popular Apache HTTP Server. It is compatible with the majority of Apache’s modules and features and can be used with existing Apache configurations.

OpenliteSpeed offers many advantages over Apache, including improved performance, lower memory usage, and easier administration. 

If you intend to use OLS for WordPress you are in for a Treat, as OLS dramatically improves the performance of a WordPress website via its plugin.

So, if you are looking for a fast, secure, and easy-to-use web server, OpenliteSpeed is an excellent choice. In this guide, we will show you how to install OpenliteSpeed on an Oracle Free VPS running Ampere ARM A1.

woman in black top using Surface laptop

What is Oracle’s forever Free VPS (Ampere ARM A1)?

If you’re looking for a free Virtual Private Server (VPS), you might be wondering what Oracle’s forever Free VPS (Ampere ARM A1) is all about. 

In short, it’s a great way to get started with Oracle’s cloud infrastructure services without having to pay anything upfront. Ampere ARM A1 is a low-cost, cloud-based server that’s perfect for websites that are starting out.

Oracle’s free VPS comes with 24GB of memory, 4 CPU cores, and 20GB of storage, and you can use it for as long as you like.

There are some caveats though. First, the service only has limited availability, so you might have to keep checking to secure one for you when new capacity is added at Oracle Cloud’s end. 

Second, the forever Free VPS doesn’t have port 25 open. So, if you need to send Emails, you’ll have to upgrade to a paid plan or use an external SMTP service. 

Overall, Oracle’s forever Free VPS is a great way to get started with the company’s cloud services. It’s one of the best freebies available and it won’t cost you anything upfront. Just keep in mind that you’ll need to upgrade if you need more resources than what’s included in the free plan.

Prerequisites for Openlitespeed installation on Oracle’s Free VPS (Ampere ARM A1)

To install Openlitespeed on Oracle’s free VPS (Ampere ARM A1), there are a few things you’ll need to do first.

1. Make sure you already have a VPS with Oracle cloud, which is of type Ampere ARM A1.

2. Make sure you have a supported Linux distribution installed. We are going to use Ubuntu in this Tutorial. So, it’s best if you install or re-install your VPS with Ubuntu version 22.04. Though, any Debian 11 should work fine.

3. Make sure you have root access to your server. This is necessary to install the required packages and configure the server properly.

3. Ensure that your server meets the minimum system requirements for Openlitespeed. We recommend at least 2 CPUs and 6GB of RAM on ARM A1, as processing power on these instance types is comparatively low.

Technical Guide for Openlitespeed installation on Oracle’s Free VPS (Ampere ARM A1)

Installing Debian 11 on your Oracle VPS

For the folks who have not yet installed Debian 11 on their VPS

wget -O debi.sh https://raw.githubusercontent.com/bohanyang/debi/master/debi.sh
chmod +x debi.sh
./debi.sh --user root
#Wait for above process to complete
reboot
#VPS will boot up in debian in 4-5 minutes.

Install Dependencies on your Oracle VPS

SSH into your ARM A1 VPS and switch to root using sudo su

apt install build-essential autoconf libtool bison re2c pkg-config libssl-dev libbz2-dev libcurl4-openssl-dev libffi-dev libzip-dev libpng-dev libjpeg-dev libwebp-dev libavif-dev libgmp-dev libc-client-dev libkrb5-dev libldap2-dev libonig-dev libreadline-dev libsodium-dev libxml2-dev libsqlite3-dev

Download the latest source code of Openlitespeed

The Latest or other builds can be downloaded from https://openlitespeed.org/downloads/

wget https://openlitespeed.org/packages/openlitespeed-1.7.16.src.tgz

Build Openlitespeed

tar xfz openlitespeed-version
cd openlitespeed-version
./build.sh

Above command will take sometime to finish. Once it’s done.

./install.sh

Download runtime dependency

wget https://www.php.net/distributions/php-5.6.35.tar.gz
tar xfz php-5.6.35.tar.gz
cd php-5.6.35

Monkey patch to ensure dependecy are in correct place

cp /etc/lib/aarch64-linux-gnu/libexpat* /lib/

Configure Openlitespeed

./configure --with-config-file-path=../conf --disable-all --with-litespeed --enable-session --enable-posix --enable-xml --with-libexpat-dir=/lib/ --with-zlib --enable-sockets --enable-bcmath --enable-json

Modify Zend file

Edit Zend/zend_multiply.h, line 65 to this git commit(https://github.com/php/php-src/commit/8c8679207ae5ada8751288e75b78c928a4d34d1d).

File should finally look like below.

#define ZEND_SIGNED_MULTIPLY_LONG(a, b, lval, dval, usedval) do {       \
        long __tmpvar;                                                                                                  \
        __asm__("mul %0, %2, %3\n"                                                                              \
                "smulh %1, %2, %3\n"                                                                            \
                "sub %1, %1, %0, asr #63\n"                                                                     \
                        : "=&r"(__tmpvar), "=&r"(usedval)                                                       \
                        : "r"(a), "r"(b));                                                                              \
        if (usedval) (dval) = (double) (a) * (double) (b);                              \
        else (lval) = __tmpvar;                                                                                 \
} while (0)

Compile it

make && make install

Finalizing changes and configuring password

cd /usr/local/lsws/admin/fcgi-bin/
rm -rf admin_php
cp /usr/local/bin/lsphp /usr/local/lsws/admin/fcgi-bin/admin_php
rm -rf /usr/local/lsws/fcgi-bin/lsphp*
cp /usr/local/bin/lsphp /usr/local/lsws/fcgi-bin/lsphp
cp /usr/local/bin/lsphp /usr/local/lsws/fcgi-bin/lsphp5
cd /usr/local/lsws/admin/misc
bash admpass.sh # change ur password
systemctl restart lsws

You are up and running

Go to your instance ip:7080 and login

Conclusion

If you’re looking for a high-performance web server that’s easy to install and configure, then OpenLiteSpeed is a great choice. In this article, we’ve shown you how to install OpenLiteSpeed on Oracle’s Free VPS (Ampere ARM A1). We hope you found this guide helpful.