Skip to content
CMS

How to install OrangeHRM with Apache on Ubuntu 24.04

Richard
Written by
Richard
Jun 5, 2024 Updated Jun 20, 2026 7 min read
OrangeHRM featured image

You install OrangeHRM with Apache on Ubuntu 24.04 to deploy an open-source Human Resources Information System (HRIS) on your server.

OrangeHRM is a popular free and open-source HR software solution that helps manage employee data, payroll, and other HR functions. Apache is a widely-used web server that will host your OrangeHRM application.

This tutorial walks you through the installation process on Ubuntu 24.04 LTS Jammy Jellyfish, ensuring you have a functional HR management system. You’ll configure Apache to serve the OrangeHRM application securely and efficiently.

⚡ Quick Answer

Install Apache, MariaDB, and PHP using apt commands. Create a database named `orangehrmdb` for OrangeHRM. Configure Apache to serve the OrangeHRM application files.

Install Apache HTTP server on Ubuntu.

OrangeHRM needs a web server to run, and we’ll use the popular Apache web server for this guide on Ubuntu 24.04.

To do that, open the Ubuntu terminal and run the commands below to install the Apache web server.

🐧Bash / Shell
sudo apt update
sudo apt install apache2

Once Apache is installed, the commands below can start, stop, and enable the Apache web server to start automatically when your server boots up.

🐧Bash / Shell
sudo systemctl stop apache2
sudo systemctl start apache2
sudo systemctl enable apache2

You can test that the Apache web server is running by opening your web browser and browsing to the server’s localhost or IP address.

http://localhost

Apache2 default landing page confirming successful installation on Ubuntu 24.04

When you see the Apache2 Default Page, it means the Apache HTTP server is successfully installed.

Additional help on installing Apache on Ubuntu is in the link below.

How to install Apache on Ubuntu

Install the MariaDB database server on Ubuntu

Your OrangeHRM setup needs a database, so we’ll install and set up the MariaDB database server on your Ubuntu system.

To install and use the MariaDB database server, use the instructions below.

Open the Ubuntu terminal and run the commands below to install the MariaDB database server.

🐧Bash / Shell
sudo apt update
sudo apt install mariadb-server

Once the MariaDB database server is installed, use the commands below to stop, start, and enable the MariaDB server to start automatically when the server boots.

🐧Bash / Shell
sudo systemctl stop mariadb
sudo systemctl start mariadb
sudo systemctl enable mariadb

Run the following commands to validate and test if the MariaDB database server is installed successfully.

🐧Bash / Shell
sudo mariadb

Once you run the commands above, it will log you onto the MariaDB console and display a message similar to the one below.

💻Code
Welcome to the MariaDB monitor.  Commands end with ; or g.
Your MariaDB connection id is 32
Server version: 10.11.2-MariaDB-1 Ubuntu 23.04

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

MariaDB [(none)]> 

The message tells you that the server is installed successfully.

Additional help on installing MariaDB.

Create an OrangeHRM database

After installing MariaDB, you need to create a specific database for OrangeHRM, including a user and permissions, so the application can store its data.

As part of the setup, we will create an orangehrmdb database and a corresponding user account called orangehrmdbuser.

Finally, we’ll grant the orangehrmdbuser full access to the orangehrmdb database.

All the database steps above can be done using the commands below:

But first, log on to the MariaDB database server:

🐧Bash / Shell
sudo mariadb

Then run the commands below to complete the steps:

💻Code
CREATE DATABASE orangehrmdb CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER orangehrmdbuser@localhost IDENTIFIED BY 'type_your_password_here';
GRANT ALL ON orangehrmdb.* TO orangehrmdbuser@localhost WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit

Ensure to replace ‘type_your_password_here ‘with your password.

Install PHP on Ubuntu Linux

OrangeHRM is built using PHP, so we need to install it along with necessary extensions on your Ubuntu system to make the application work.

Run the commands below to install PHP.

🐧Bash / Shell
sudo apt install php libapache2-mod-php php-intl php-mysql php-curl php-cli php-zip php-xml php-gd php-common php-mbstring php-xmlrpc php-json php-sqlite3 php-soap php-ldap php-zip

Additional help on installing PHP

How to install PHP on Ubuntu Linux

Download OrangeHRM files

Now it’s time to get the OrangeHRM software itself by downloading the latest files and preparing them to run on your Ubuntu server.

To always install the latest version, check the OrangeHRM’s download page. If a new version is available, replace the version number in the link below.

First, navigate to the /tmp/ directory and download OrangeHRM files. After unzipping the file, move the content into the OrangeHRM folder in the Apache root directory.

The final step is to change the permissions. This will allow the Apache web server to interact safely with the files, ensuring a secure environment for your OrangeHRM installation.

Command Prompt
cd /tmp
wget https://gigenet.dl.sourceforge.net/project/orangehrm/stable/5.6.1/orangehrm-5.6.1.zip
unzip orangehrm-5.6.1.zip
sudo mv orangehrm-*/ /var/www/orangehrm
sudo chown -R www-data:www-data /var/www/orangehrm

Once you have completed all the above steps, continue configuring the Apache web server below to serve the OrangeHRM content.

Run the commands below to create an Apache virtual host file for OrangeHRM.

🐧Bash / Shell
sudo nano /etc/apache2/sites-available/orangehrm.conf

Then, copy and paste the content block below into the Apache server block.

💻Code
<VirtualHost *:80>
ServerName orangehrm.example.com
ServerAlias www.orangehrm.example.com
ServerAdmin admin@example.com
DocumentRoot /var/www/orangehrm

<Directory /var/www/orangehrm/>
Options FollowSymlinks
AllowOverride All
Require all granted
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Save the file.

Then, run the commands below to enable the virtual host and restart the Apache server.

🐧Bash / Shell
sudo a2ensite orangehrm.conf
sudo a2enmod rewrite
sudo systemctl restart apache2

Setup Let’s Encrypt SSL/TLS for OrangeHRM

To make your OrangeHRM installation secure and accessible via HTTPS, we’ll set up a free SSL/TLS certificate using Let’s Encrypt with Apache.

Please read the post below for additional resources on installing and creating Let’s Encrypt SSL certificates for Apache.

How to set up Let’s Encrypt SSL certificate for Apache on Ubuntu Linux

Once you have restarted the Apache web server, open your browser and browse to the server hostname or IP address defined in the Apache server block.

💻Code
http://orangehrm.example.com

An OrangeHRM installation wizard page should appear. Select the installation type and continue.

OrangeHRM installation wizard welcome
OrangeHRM installation wizard welcome

Next, select an existing database and enter the name, user account, and password. Then, click next.

OrangeHRM installation wizard database connection
OrangeHRM installation wizard database connection

Next, enter your organization name details and click next.

OrangeHRM organization name
OrangeHRM organization name

Next, create an administrator account and continue.

OrangeHRM administrator
OrangeHRM administrator

Confirm details and click Install

OrangeHRM confirmation
OrangeHRM confirmation

Your OrangeHRM site should be set up and ready to use.

OrangeHRM complete
OrangeHRM complete

That should do it!

Conclusion

You’ve now successfully installed OrangeHRM with Apache on Ubuntu 24.04, creating a secure and functional system for your HR needs.

  • Apache Installation: The tutorial covered the installation and configuration of the Apache web server, an essential component for running OrangeHRM.
  • MariaDB Installation: Step-by-step instructions were provided for installing and setting up the MariaDB database server, enabling the creation of a dedicated database for OrangeHRM.
  • Database Setup: Detailed guidance was offered for creating an OrangeHRM-specific database user account and granting appropriate privileges.
  • PHP Installation: Instructions for installing PHP, a fundamental requirement for OrangeHRM, were provided to ensure the system’s compatibility with the application.
  • OrangeHRM Files Download: The tutorial included instructions for downloading and configuring the latest OrangeHRM files and detailed steps for adjusting file permissions.
  • Apache Virtual Host Configuration: A comprehensive guide was provided for creating an Apache virtual host file specifically for OrangeHRM, ensuring proper server configuration.
  • Let’s Encrypt SSL/TLS Setup: To enhance the security of the OrangeHRM installation, additional resources and information were provided to set up Let’s Encrypt SSL/TLS certificates.

By adhering to these instructions, you have successfully established a robust environment for OrangeHRM on your Ubuntu server, ready for seamless HR management operations. If you encounter any issues or require further assistance, please utilize the comments section for additional support and clarification.

How to install orange hrm?

Right. Now simply you need to install this orange hrm. So open the browser. And you need to configure the database.

Is Orange HRM completely free?

OrangeHRM Starter gives you everything you need to manage your people with confidence, without the price tag. Designed for small teams and growing businesses, our free and open-source HR software helps you build a solid HR foundation that scales as you grow.

What is OrangeHRM used for?

OrangeHRM is a flexible, all in one HR software that helps businesses of all sizes manage their people, streamline HR processes, and drive growth.

Was this guide helpful?

Was this helpful?
Richard

About the Author

Richard

Tech Writer, IT Professional

Richard, a writer for Geek Rewind, is a tech enthusiast who loves breaking down complex IT topics into simple, easy-to-understand ideas. With years of hands-on experience in system administration and enterprise IT operations, he’s developed a knack for offering practical tips and solutions. Richard aims to make technology more accessible and actionable. He's deeply committed to the Geek Rewind community, always ready to answer questions and engage in discussions.

No comments yet — be the first to share your thoughts!

Leave a Comment

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

Exit mobile version