Sarathlal N

Install & configure a basic nginx server on Debian 8 for static website hosting

This server configuration is only for static website hosting. No application like PHP, MySql etc. The below configured server only serve HTML, CSS & javascript files.

Install Nginx

sudo apt-get install nginx

Configure Server

In Nginx server, blocks are the equivalent of Apache’s virtual hosts. So create the server block file /etc/nginx/sites-available/example.com.

In this and all following steps, replace example.com with our domain name.

Create a new configuration file

touch /etc/nginx/sites-available/example.com

Edit configuration file

sudo nano /etc/nginx/sites-available/example.com

Update the content

server {
listen   80;
server_name www.example.com example.com;
access_log /var/www/html/example.com/logs/access.log;
error_log /var/www/html/example.com/logs/error.log;

location / {
	root   /var/www/html/example.com/public_html;
	index  index.html index.htm;
}
}

Create the public_html and log directories referenced above:

sudo mkdir -p /var/www/html/example.com/{public_html,logs}

Enable the site and restart the web server.

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled
sudo systemctl restart nginx
sudo rm /etc/nginx/sites-enabled/example.com
sudo systemctl restart nginx

Looking for a skilled WordPress/WooCommerce developer? I'm currently available for freelance, contract, or full-time remote opportunities! Let's create something amazing together. Send me a quick message, and I'll respond within 24 hours!

Recent Posts

  1. REST API Methods Explained with Best Practices for Building Clean and Secure APIs
  2. My 28-Day Plan to Master Modern WordPress Development Using AI Tools
  3. Scaling WordPress - How Custom Database Tables Solve the Post Meta Bottleneck
  4. WordPress Transients Explained - A Developer's Guide to Site Performance
  5. Behind the Click - The Hidden Journey of Your Web Requests

Your Questions / Comments

If you found this article interesting, found errors, or just want to discuss about it, please get in touch.