• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
NameHero® Blog

NameHero® Blog

Web Hosting Tips & Resources From NameHero

  • AI Agents
    • OpenClaw
    • Claude Code
    • n8n
    • Hermes Agent
    • Open WebUI
    • Docker
  • Hosting
    • Web Hosting
    • WordPress Hosting
    • WooCommerce Hosting
    • Enterprise Hosting
    • Email Hosting
    • HeroicGuard
    • GPU Hosting
    • Website Builder
  • VPS
    • Managed VPS
    • Unmanaged VPS
    • Flex VPS
  • Reseller
  • Gaming
  • Domains
  • Account
  • Blog Home
  • Categories
  • Authors

How to Install the NodeJS Selector in cPanel/WHM

Bhagwad Park

Published on: August 30, 2023

Categories: Linux Command Line, Reseller Hosting, VPS Hosting 0

In an earlier tutorial, I’d written about how to install Node.js on EasyApache. However, this doesn’t mean that it’s easy for users to get started with creating a Node.js application.

If you have a shared hosting VPS, and you want to offer Node.js to your clients, then you need a much more streamlined way to allow them to use Node.js. That’s where the cPanel Node.js Selector comes in.

In this tutorial, I’ll show you how to use the command line on your server to install all the components of the cPanel Node.js plugin, and then enable it so that your users can start creating their own Node.js applications using the GUI.

Table of Contents
  • Prerequisites
  • What is CloudLinux and How Do You Know If You Have It?
    • File System Isolation
    • Faster PHP With Mod_LSAPI
    • How to Know if You’re Running CloudLinux
  • Installing the Node.js Selector Pre-Requisites
  • Making Node.js Available on cPanel for Your Users
  • Using the Node.js Selector in cPanel
  • Using Node.js to Differentiate your Reseller Account

Prerequisites

To install the Node.js Selector in cPanel, you need to have the following:

  1. Root access to your server
  2. A WHM account with root access
  3. A CloudLinux server

The first two are self-explanatory. The third requirement might trip you up if you’re unaware of what CloudLinux is.

What is CloudLinux and How Do You Know If You Have It?

CloudLinux is a Linux distribution based on CentOS, which is in turn, based on RHEL. The focus of CloudLinux is multi-tenancy – meaning shared hosting. It’s built from the ground up to accommodate account isolation and comes with a feature known as LVE – Lightweight Virtual Environment. This LVE ensures that a surge in resources from one account doesn’t impact the performance of other accounts on the server.

File System Isolation

CloudLinux also uses a filesystem called CageFS – a virtual file system ensuring that users in a shared hosting environment can never physically access the files and folders of others on the server. This goes beyond mere file-level permissions. CageFS elevates account separation on CloudLinux to such a degree that obtaining access to another user’s information is simply impossible.

Faster PHP With Mod_LSAPI

With so many users running WordPress, CloudLinux claims that its Mod_LSAPI system for delivering PHP webpages is faster than traditional methods like FastGI and mod_php. With all these features, CloudLinux is now a popular choice for a Linux OS if your intention is to run it as a shared hosting server.

How to Know if You’re Running CloudLinux

The Node.js Selector requires CloudLinux, so it’s essential for you to know whether or not you’re running this OS. To do this, log into WHM as root, and access the shell by typing “ssh” into the search box on the top-right hand corner like this:

Login to SSH on WHM
Login to SSH on WHM

In the tools drop-down box, click “Terminal” as shown above. This will open a terminal window within WHM, from which you can issue commands to check whether or not you’re running CloudLinux.

To check this, type:

cat /etc/redhat-release

This will print the version of Red Hat that you’re running. Since CloudLinux is based on CentOS, which in turn is based on Red Hat’s RHEL, you should get an output like this if you’re running CloudLinux:

Check if You're Running CloudLinux
Check if You’re Running CloudLinux

As you can see, we’re indeed running CloudLinux and so we have all the conditions for installing the Node.js Selector app on cPanel.

Installing the Node.js Selector Pre-Requisites

Even though CloudLinux supports the Node.js selector natively, it doesn’t appear on our users’ cPanel dashboard on its own. In fact, it doesn’t show up in WHM either. We first need to install the following packages on CloudLinux:

  1. The group package alt-nodejs
  2. lvemanager
  3. lve-utils
  4. ea-apache24-alt_mod_passenger
  5. cagefs

The alt-nodejs group package is part of CloudLinux’s “Software Collections” – or SCL. It contains all the alternative Node.js versions, which is important because the Node.js selector allows us to target specific Node.js versions, and we can set this on a “per-account” basis if we want.

To install the alt-nodejs group, type:

yum groupinstall alt-nodejs

Here you can see that the command installs all the Node.js versions:

Install alt-nodejs
Install alt-nodejs

The installation of the entire alt-nodjs group takes a long time, so be prepared to wait a bit. A yum groupinstall is a collection of packages, so you have to wait for all of them to download. Particularly given that you could be installing Node.js versions ranging from 9 to 20, it could be a lot.

While CloudLinux already comes with LVE, you might need to install additional packages to ensure that the LVE manager and utilities are available. In addition, you need to install the passenger module that allows Node.js to integrate with Apache and host Node.js applications using the default web server that you provide with shared hosting. To install these additional packages, type the following command:

yum install lvemanager lve-utils ea-apache24-alt_mod_passenger

Chances are, you’ll find that the first two packages are already installed. But the last one won’t be. If you skip this step, then when you log into WHM to enable Node.js for cPanel.

Apache Passenger is required by Node.js Selector. Please, contact your hoster.

The final step is to ensure that the CageFS virtual filesystem is installed. As with the other packages, chances are that it’s already present. But just to make sure, type:

yum install cagefs
CageFS is Already Installed
CageFS is Already Installed

Finally, to complete the installation, restart cPanel as shown here:

systemctl restart cpanel

If you’re accessing the command line using the WHM interface and not through an SSH client, this command will break the connection to your browser and you’ll need to reload the page after a few seconds while cPanel restarts.

Making Node.js Available on cPanel for Your Users

Just because we’ve installed the components of the Node.js Selector, doesn’t mean that your users will automatically see it in their cPanel dashboards. You need to manually enable it from WHM. On the dashboard, type “CloudLinux Manager” inside the search box on the left-hand side as shown here:

CloudLinux Manager
CloudLinux Manager

This brings up the CloudLinux configuration screen, from where you can enable and disable various aspects of CloudLinux. Thanks to the installation of the packages, Node.js should now be visible as a module:

Enable NodeJS
Enable NodeJS

This will take you to the subsection where you toggle the button enabling Node.js, along with the various versions of the framework. You can use this section to determine to which Node.js versions your users have access. It allows you to enable and disable each version separately:

Toggle NodeJS
Toggle NodeJS

Save your changes, and you’re done.

Using the Node.js Selector in cPanel

Your users can now access the Node.js selector in cPanel with the versions you’ve enabled. To test this, log into an account’s cPanel dashboard and scroll down to the Software section to select “Setup Node.js App”:

cPanel Software Setup Node.js App
cPanel Software Setup Node.js App

If you already have some Node.js applications on your server, you’ll see them in the following screen and you can manage their Node.js versions. If you don’t have any applications so far, click “Create Application” as shown here:

Create Node.JS Application
Create Node.JS Application

In the application’s configuration screen, you can select the version of Node.js that you want to install from the dropdown box:

Select NodeJS Version
Select NodeJS Version

Now your users can start creating Node.js applications from scratch using cPanel!

Using Node.js to Differentiate your Reseller Account

Not many web hosts offer Node.js by default. And most big resellers won’t modify their server configurations just to accommodate your request for Node.js, because they won’t want to reconfigure their server. This is a great opportunity for you to attract those clients who want to run Node.js applications.

Bhagwad Park Profile Picture
Bhagwad Park

I’m a NameHero team member, and an expert on WordPress and web hosting. I’ve been in this industry since 2008. I’ve also developed apps on Android and have written extensive tutorials on managing Linux servers. You can contact me on my website WP-Tweaks.com!

Related Posts

Resolving the “Fatal: Refusing to Merge Unrelated Histories” Error

The "fatal: refusing to merge unrelated histories" occurs when you try and merge an unrelated repo into your own. Here's what it means.

Bash Debug Mode: set -x and the PS4 Variable

When coding a program, you usually have a full IDE set up with autocomplete and stack tracing, allowing you to pause execution at any point and see what’s going on under the hood. These tools make coding more productive, and they’ve been in use for a long time. But what if you’re just quickly coding […]

Bash Conditional Expressions: [[ vs [ vs test

In bash scripts, we use conditional statements frequently. Whether it’s in an “if fi” logic block or within a “while” or “do” loop, we evaluate statements all the time to determine whether they’re true or false, and perform various actions based on the result. True to form, there are multiple ways to do this, and […]

How to Use Vim Search and Replace in Linux

The vim search and replace functionality in Linux consists of a series of very powerful tools - but also simple ones to get started easily.

Reader Interactions

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Primary Sidebar

Follow & Subscribe

Exclusive promos, content and more!


Most Popular Posts

NameHero’s Recommended WordPress Plugin and Theme Setup

WordPress Hosting vs. Web Hosting – What’s The Difference?

How To Increase The InnoDB Buffer Pool Size

How To Fix A Stuck All-in-One WP Migration Import

How To Add A Subdomain In Cloudflare

Top Categories

  • WordPress
  • WordPress Tutorials
  • OpenClaw Hosting
  • Enterprise Hosting
  • WooCommerce
  • Web Hosting
  • Resellers
  • Website Security
  • Website Development
  • Website Performance
  • VPS Hosting
  • SEO Tips
  • Announcements
  • Domain Registration
NameHero

NameHero® proudly provides web hosting to over 40,000 customers with 99.9% uptime to over 750,000 websites.

  • Master Card
  • Visa
  • American Express
  • Discover
  • Paypal
Products
  • Web Hosting
  • Managed VPS Hosting
  • Unmanaged VPS Hosting
  • Flex VPS Hosting
  • WordPress Hosting
  • WooCommerce Hosting
  • Reseller Hosting
  • Enterprise Hosting
  • GPU Hosting
  • Email Hosting
  • HeroicGuard
  • Domains
  • Website Builder
  • AI Agent Hosting
Help & Support
  • NameHero Blog
  • NameHero Gaming Blog
  • Support
  • Help Center
  • Migrations
  • Affiliates
  • Gaming Affiliates
  • Call 1-855-984-6263
Company
  • About Us
  • Contact Sales
  • Reviews
  • Uptime
  • We're Hiring

Copyright © 2026 Name Hero, LLC. All rights reserved.
NameHero® is a registered trademark.

  • Privacy Policy
  • Terms of Use
  • Acceptable Use Policy
  • Payment Policy
  • DMCA