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.