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

Recent Posts

  1. Remove edit, view, trash and quick edit links within posts list of admin screen - WordPress
  2. PHP Errors not displaying or not logging - LAMP server - Solved
  3. Display all hooks sequentialy that run on a page - WordPress
  4. Get downloadable files of a downloadable product - WooCoomerce
  5. Add actions based on WooCoomerce order status

Your Questions / Comments

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