Search

Install Nginx HTTP server on Ubuntu

post-title

Nginx is an open source HTTP web server that is often used as reverse proxy or HTTP cache. Nginx is popular for high-performance, speed, stability and low resource consumption.

In this article, we will walk through installing and setting up NginX server on Ubuntu. Follow these steps to install and setup NginX on your ubuntu.

Requirement

You need to be logged in non-root user with sudo permission. 

Installing Nginx

Nginx is available Ubuntu's default repository, so you can directly install with below command.

sudo apt-get update
sudo apt-get install nginx

After installing it, open your browser and run your server IP address. If you see this page, then you have successfully installed Nginx on your Ubuntu. This default page placed at /var/www/html/ location.

Configure Nginx

Check ufw application list with below command.

sudo ufw app list

Add Nginx to use port 80.

sudo ufw allow 'Nginx HTTP'

If you want to check Nginx server status, then you can run following command.

sudo systemctl status nginx

Add websites to Nginx

When using multiple websites, you need to add your websites to Nginx configuration. For that first create a new Nginx configration file.

sudo nano /etc/nginx/sites-available/website

And put the site details in it.

server {
    listen 80;
    listen [::]:80;

    root /var/www/html/website;
    index index.html index.htm index.nginx-debian.html;

    server_name website www.website.com;

    location / {
            try_files $uri $uri/ =404;
    }
}

Now create a website folder /var/www/html/website. And also give 755 permission.

sudo mkdir /var/www/html/website
sudo chmod -R 7555 /var/www/html/website

Now create simple page for website homepage.

sudo nano /var/www/html/website/index.html

And put any HTML code to check.

<!DOCTYPE html>
<html>
<head>
    <title>Hello World!</title>
</head>
<body>
    <h1>Hello World!</h1>
    <p>Welcome to Website.com</p>
</body>
</html>

Save this file. And now restart the Nginx server.

sudo systemctl restart nginx

Now open your and open your website. you should get your page.

Conclusion

You have completed to install Nginx server and host websites on your Server. There are many features you can add or change in Nginx. You can check the Nginx official documentation.