In this tutorial, we will show you how to install Nginx on CentOS 9 Stream. For those of you who didn’t know, Nginx (Engine X) is the most popular, powerful web server software that can be used on your server. It is also known for its high performance and low memory usage. In addition to its HTTP server capabilities, NGINX can also function as a proxy server for e-mail (IMAP, POP3, and SMTP) and a reverse proxy and load balancer for HTTP, TCP, and UDP servers.
This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo
‘ to the commands to get root privileges. I will show you the step-by-step installation of the Nginx web server on CentOS 9 Stream.
Prerequisites
- A server running one of the following operating systems: CentOS 9 Stream.
- It’s recommended that you use a fresh OS install to prevent any potential issues
- You’ll need an active internet connection to download Nginx and its dependencies.
- A network connection or internet access to download the Nginx package.
- A
non-root sudo user
or access to theroot user
. We recommend acting as anon-root sudo user
, however, as you can harm your system if you’re not careful when acting as the root.
Install Nginx on CentOS 9 Stream
Step 1. First, keeping your system updated is crucial for security and performance:
sudo dnf update
Step 2. Installing the Nginx on CentOS 9 Stream.
By default, Nginx is available on the CentOS 9 Stream base repository. Now we run the following command to install Nginx to your system:
sudo dnf install nginx
Once the installation is complete, now enable Nginx (to start automatically upon system boot), start the webserver, and verify the status using the commands below:
sudo systemctl start nginx sudo systemctl enable nginx sudo systemctl status nginx
To verify the Nginx version, use the following command to confirm:
nginx -v
Step 3. Configure Firewall.
If your server is protected by a firewall you need to open both HTTP (80) and HTTPS (443) ports:
sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload
Step 4. Verify Nginx Installation.
Once successfully installed, open http://your-IP-address
in your browser of choice, and you will see the default Nginx welcome page as shown in the image below:
Step 5. Nginx Configuration File’s Structure.
You don’t need to configure Nginx upon installation. However, you should know the location of the configuration files and the Nginx root directory in case you need to modify the configuration.
- Nginx configuration directory:
/etc/nginx
- Nginx root directory:
/usr/share/nginx/html
- Master/Global configuration file:
/etc/nginx/nginx.conf
Congratulations! You have successfully installed Nginx. Thanks for using this tutorial to install the Nginx web server on CentOS 9 Stream. For additional help or useful information, we recommend you check the official Nginx website.