Purchase a Self-Managed VPS with OpenLiteSpeed + Node.js Installation

OpenLiteSpeed is a lightweight web server build for great website performance and low server resource consumption. Along with Node.js, a very popular JavaScript runtime environment, it’s a robust platform for developing and deploying modern web applications, APIs, and real-time services.

So, if you’re building a custom website, deploying an API, or running a web application that requires speed and scalability, OpenLiteSpeed and Node.js offer a fast and reliable hosting solution

Why Use OpenLiteSpeed + Node.js Application?

As websites and applications become more advanced, having a hosting environment that can handle growing traffic and complex functionality is essential. OpenLiteSpeed is known for its high performance and built-in caching features, while Node.js allows developers to create fast, scalable applications using JavaScript.

Together they offer several benefits:

  • Fast page loading and app performance.
  • Optimization of server resource usage.
  • Built in cache features for more speed.
  • Modern JavaScript application support.
  • Trusted performance for high-traffic websites and apps.
  • Reliable performance for high-traffic websites and applications

This combo is great for companies and developers looking for a flexible platform that can do anything from a simple web app to large scale services.

Uses of OpenLiteSpeed + Node.js Application

OpenLiteSpeed and Node.js are commonly used for a variety of web development projects, including:

  • Web Applications: Build interactive and dynamic websites using modern JavaScript frameworks and technologies.
  • APIs and Backend Services: Create fast and scalable APIs that power websites, mobile apps, and third-party integrations.
  • Real-Time Applications: Support features like live chat, instant messaging, notifications, and collaborative tools that require real-time communication.
  • E-Commerce Websites: Deliver a responsive shopping experience with fast-loading pages and reliable performance.
  • Content Platforms: Host custom content management systems, blogs, and media-driven websites.
  • Microservices and Development Projects: Deploy independent services and applications that can scale as your project grows.

How to Purchase a Self-Managed VPS with OpenLiteSpeed + Node.js Application Installation

To deploy and manage OpenLiteSpeed with Node.js, start by purchasing a Bluehost Self-Managed VPS Hosting plan. Follow the steps below:

Pre-configured Setup

Self-Managed VPS - Pre-configured Setup New to VPS or not sure where to start? No worries! At the top of the Self-Managed VPS purchase page, you’ll see the Pre-configured Setup section. This handy feature is perfect if you’re feeling a bit unsure—just pick the type of project you want, like WordPress Site, AI Agent/Claude Code, Dev/Staging, or eCommerce Store. We’ll take care of the rest by automatically filling in the best plan, operating system, and template for you.
  • Super simple for beginners or anyone who just wants a quick setup
  • Instantly get the recommended settings for your project
  • Skip the guesswork and save time
  • You can still customize things later if you want
Give the Pre-configured Setup a try and get your Bluehost Self-Managed VPS up and running in no time!
  1. In your browser, go to https://www.bluehost.com/vps-hosting.
  2. Click the Choose Plan button under your preferred VPS hosting plan.

    VPS Hosting-Choose Plan
     

  3. Select your preferred Data Center location.

    Select Location
     

  4. Hardware
    1. Pre-selected:
      You can select a different Self-Managed VPS plan in this section.

      Pre-selected
       

    2. Configure:
      Click Configure to customize your package.

      Configure your server
       

  5. Software
    1. Click on the Application Tab.
    2. Choose OpenLiteSpeed + Node.js.

      Choose OpenLiteSpeed + Node.js
       

    3. Click Confirm to continue.

      Choose OpenLiteSpeed + Node.js - Confirm
       

  6. Add-Ons:
    • Premium Support:
      Provides you with priority access to our expert team, ensuring faster responses and personalized help whenever you need them.

      Add-ons
       

  7. In the Advanced options:

    Advanced Options
     

    • Extra IP's: You can add extra IP addresses for an additional fee.
      Pricing changes based on how many IPs you add.
    • Hostname: Assign a custom hostname to easily identify your server. This is optional.
  8. Select your preferred billing term and view your Order Summary. Click the Continue to Checkout button to proceed.

    Continue To Checkout
     

  9. Do the following on the Checkout page:
    1. Create an Account: To get started, you’ll need to create your Bluehost account. You can do this easily by using your email address or by connecting with your Google, Apple, or GitHub account — whichever you prefer!

      Create Your Bluehost Account
       

    2. Enter Your Billing Information.

      Billing Information Form
       

  10. In the Shopping Cart section, adjust the terms as needed. Click Submit Payment to complete the purchase.

    Billing Information Form
     

Access Your OpenLiteSpeed + Node.js Dashboard

After installation completes:

  1. Log in to your Bluehost Portal.
  2. In the left-hand menu, click the Hosting tab.

    Self Managed VPS
     

  3. Look for the server you want to manage then click the View Details to see more options.

    Self Managed VPS
     

  4. Click the Reset Password.

    Self Managed VPS
     

  5. In the pop-up window, type your new root password, then click Reset Password again to confirm and save the changes.

    Self Managed VPS
     

  1. Connect to your VPS via SSH.
    Use your VPS IP and credentials with an SSH client, follow the prompts, and enter your root password when asked:
    ssh root@your_server_ip
  2. Retrieve your password by running this command.
    grep OLS_ADMIN_PASS /root/.app_passwords
  3. You will see the password for your dashboard.
    Example:
    root@server-123456:~# grep OLS_ADMIN_PASS /root/.app_passwords
    OLS_ADMIN_PASS=0pyjA1ItjdBvI05SEP3m34AC
  4. Access your Web UI. Enter the
    http://server_IP:7080/ in your browser. (Example: http://12.3.456.789:7080/)
  5. You will be redirected to your dashboard login page.

    Openlite Dashboard Login Page
     

  6. Enter the credentials you got from Steps 6 and 8. 
  7. You will be redirected to your dashboard.

    Openlite Dashboard
     

Additional Information and Example Documentation Output

You can run cat /root/README.md to see more information and useful commands:

Example Output:

root@123456:~# cat /root/README.md
# OpenLiteSpeed + Node.js

## Description

OpenLiteSpeed and Node.js is a high-performance web server and runtime combination that helps you deploy fast, scalable server-side JavaScript applications. OpenLiteSpeed handles efficient traffic delivery while Node.js powers real-time, event-driven back-end logic, making this stack ideal for APIs, web apps, and dynamic services that demand speed and concurrency.

## Image contents

* OpenLiteSpeed from the official LiteSpeed repository (`repo.litespeed.sh`)
* Node.js 22 LTS via NodeSource
* Placeholder Node.js application at `/var/www/html/nodejs/app.js`
* OLS virtual host configured to proxy all traffic -> Node.js port 3000
* `nodejs-app` systemd service to manage the Node.js process
* `openlitespeed` systemd service (depends on `nodejs-app`)
* UFW firewall: ports 22, 80, 7080 open
* Log rotation at `/etc/logrotate.d/openlitespeed-nodejs`
* Login banner at `/etc/update-motd.d/99_openlitespeed-nodejs`
* First-boot script at `/var/lib/cloud/scripts/per-instance/001_onboot`

## Services

Service         | Port | Description
--------------- | ---- | -----------------------------------------------
OpenLiteSpeed   | 80   | HTTP - proxies all traffic to Node.js on 3000
OLS WebAdmin    | 7080 | Web-based admin console (HTTP)
nodejs-app      | 3000 | Internal - proxied by OLS, not exposed directly
OpenSSH         | 22   | Remote access

## First boot behavior

`/var/lib/cloud/scripts/per-instance/001_onboot` runs once on first boot:

1. Generates a 24-character random WebAdmin password.
2. Stores it in `/root/.app_passwords` (mode 600).
3. Sets the password using the official OLS `admpass.sh` tool.
4. Starts `nodejs-app` and waits for port 3000.
5. Starts `openlitespeed`.

No credentials are baked into the image - every instance gets a unique password.

## Accessing the UI

After first boot, open in a browser:

* **Node.js app:** `http://server-ip/`
* **OLS WebAdmin:** `http://server-ip:7080/`
  * Username: `admin`
  * Password: run `grep OLS_ADMIN_PASS /root/.app_passwords` on the server

## HTTPS / SSL

OpenLiteSpeed includes built-in Let's Encrypt support. To enable HTTPS:

1. Open the OLS WebAdmin console at `http://server-ip:7080/`
2. Navigate to **Listeners** and add an SSL listener on port 443.
3. Under the virtual host, use the built-in **Let's Encrypt** option to
   provision a certificate for your domain.

A valid domain name pointing to this server is required for Let's Encrypt.

## Deploying your Node.js application

Replace the placeholder with your own application:

```bash
# Upload your app files to /var/www/html/nodejs/
# Then restart:
systemctl restart nodejs-app
```

Your app must listen on `127.0.0.1:3000`. Use `process.env.PORT || 3000`.

## Useful commands

```bash
# Service status
systemctl status openlitespeed
systemctl status nodejs-app

# Restart services
systemctl restart nodejs-app
systemctl restart openlitespeed

# Logs
tail -100 /usr/local/lsws/logs/error.log
tail -100 /var/log/nodejs/app.log
journalctl -u openlitespeed -n 100 --no-pager
journalctl -u nodejs-app -n 100 --no-pager

# WebAdmin password
grep OLS_ADMIN_PASS /root/.app_passwords

# Reset WebAdmin password manually
/usr/local/lsws/admin/misc/admpass.sh
```

## Validation tests

```bash
perl /root/app_test/main.t
```

Runs 14 checks: services enabled and active, all config and service files
present, Node.js binary available, `admpass.sh` present, port 80 listening,
and end-to-end HTTP proxy response verified.

## Important paths

Path | Description
---- | -----------
`/usr/local/lsws/conf/httpd_config.conf` | OLS main server config
`/usr/local/lsws/conf/vhosts/nodejs/vhconf.conf` | OLS virtual host (proxy)
`/usr/local/lsws/logs/` | OLS server logs
`/usr/local/lsws/admin/conf/htpasswd` | WebAdmin credentials (hashed)
`/usr/local/lsws/admin/misc/admpass.sh` | OLS password reset tool
`/var/www/html/nodejs/app.js` | Node.js application entry point
`/var/log/nodejs/app.log` | Node.js application log
`/var/log/openlitespeed-nodejs/` | OLS service log
`/root/.app_passwords` | Plaintext WebAdmin password (mode 600)
`/etc/openlitespeed/openlitespeed.env` | OLS port/user reference file

## Links

* Manage: [OpenLiteSpeed WebAdmin](http://server-ip:7080/)

**OpenLiteSpeed**
* Home: [openlitespeed.org](https://openlitespeed.org/)
* Documentation: [docs.openlitespeed.org](https://docs.openlitespeed.org/)
* Installation guide: [Install from Repository](https://docs.openlitespeed.org/installation/repo/)
* Node.js app server setup: [App Server - Node.js](https://docs.openlitespeed.org/config/appserver/nodejs/)
* Reverse proxy configuration: [Reverse Proxy](https://docs.openlitespeed.org/config/reverseproxy/)
* Community forum: [forum.openlitespeed.org](https://forum.openlitespeed.org/)

**Node.js**
* Home: [nodejs.org](https://nodejs.org/)
* Node.js 22 LTS docs: [Previous Releases](https://nodejs.org/en/about/previous-releases)
* npm documentation: [docs.npmjs.com](https://docs.npmjs.com/)
* NodeSource distributions: [nodesource/distributions](https://github.com/nodesource/distributions)

Summary

OpenLiteSpeed and Node.js provide a powerful combination for hosting modern websites, web applications, APIs, and real-time services. OpenLiteSpeed delivers excellent performance and resource efficiency, while Node.js enables fast and scalable application development using JavaScript.
With Bluehost Self-Managed VPS Hosting, you get the flexibility and control needed to deploy, manage, and scale your OpenLiteSpeed and Node.js applications in a reliable hosting environment.