• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

WBXPress.NET

Website Developement Guide

  • apache2
  • nginx
  • mysql
  • php7
  • SSL
  • wordpress
  • genesis
  • caching
  • seo

Optimization of NGINX Server for Best Performance

Updated on 30th September 2015 Leave a Comment

NGINX is the fastest Web Server in the World if it is properly optimized. Here in this tutorial we will discuss few optimization tips for optimum performance.

Step 1: Optimize NginX according to your VPS hosting hardware configuration

There are different levels of VPS. For example, a basic level of VPS is 512MB RAM, 1 core processor, 20GB hard disk storage. The next level i.e. level 2 VPS, say, 1GB RAM, 2 core processor, 40GB hard disk and so on. Depending upon the no. of cores you should specify certain parameters in nginx configuration file.

sudo nano /etc/nginx/nginx.conf

Change the default value of 4 at the second line of the configuration file to a value equals to the no. of core you have in your VPS configuration.

worker_processes 2;

If you have a level 2 VPS then change the value to 2.

Step 2. Enable gZip Compression

Check your site at GTMetrix whether your website’s components are gZip compressed or not. If not then you need to edit nginx.conf file.

sudo nano /etc/nginx/nginx.conf

Uncomment the following lines:-

gzip on;
gzip_disable "msie6";
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

Step 3: Disable Access Log

By default nginx writes access log and error log in two different files namely access.log and error.log. There is no point to log access data because a busy site have tons of visits for which recording data for each visit to access.log file consume a lot of resources. So, it is better to disable access log in a busy site.

##
# Logging Settings
##

# access_log /var/log/nginx/access.log;
access_log off;
error_log /var/log/nginx/error.log;

We just commented access_log and inserted a line beneath the log path. We also deleted the access log file

sudo rm /var/log/nginx/access.log

Step 4: Lower the keepalive_timeout

By default keepalive_timeout is set to 65 seconds. By reducing this value increase the site performance.

keepalive_timeout 15;

Filed Under: nginx Tagged With: server-optimization

Reader Interactions

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Primary Sidebar

Most Popular Posts

  • Remove/ Defer Render-blocking JavaScripts
  • Customizing Genesis eleven40-pro Theme
  • Free Genesis Child Theme by WBXPress
  • Host Multiple Sites with SSL in Ubuntu 18.04
  • 25 Ways to Boost Website Traffic that Really Work

Recent Comments

  • Ruhul on Customizing Genesis eleven40-pro Theme
  • Priya Agarwal on Customizing Genesis eleven40-pro Theme
  • mimi roy on Remove/ Defer Render-blocking JavaScripts
  • danish choudhary on Customizing Genesis eleven40-pro Theme
  • Radhe on Customizing Genesis eleven40-pro Theme

Copyright © 2021 · Powered by WordPress · Log in