How to Do Page Redirections with Nginx.

Reading Time : ~ .

301 vs 302 Redirection:

301 permanent redirection:

Search Engine: When a search engine gets 301 status code in the response header of a webpage, it understands that this webpage no longer exists so it takes the new URL and replace the indexed URL with the new one and also modifies pagerank

So search engine refreshes all indexed URL that no longer exist (301 found) with the new URL, this will retain your old webpage traffic, pagerank and divert it to the new one (you will not lose you traffic of old webpage).

Browser: if a browser finds 301 status code then it caches the mapping of the old URL with the new URL, the client/browser will not attempt to request the original location but use the new location from now on unless the cache is cleared.

302 temporary redirection:

Search Engine: Here there will not be any modifications of page rank for old site as 302 specified that the page is redirected temporarily.

Browser: The browser will not change cache mapping of old url with new url as its temporary redirection.

How to to redirection in Nginx:

Its very simple to implement redirection in nginx, only thin you have to do is change your project's nginx configuration located at /etc/nginx/site-available/ directory as shown below:

Redirect Non-www to www Redirect:

Permanent(301) redirection

server {
    listen 80;
    server_name domain1.com;
    return 301 $scheme://www.domain1.com$request_uri;
}

Temporary(302) redirection:

server {
    listen 80;
    server_name domain1.com;
    return 302 $scheme://www.domain1.com$request_uri;
}

Redirect www to non-www Redirect:

Permanent(301) redirection

server {
    listen 80;
    server_name www.domain1.com;
    return 301 $scheme://domain1.com$request_uri;
}

Temporary(302) redirection:

server {
    listen 80;
    server_name www.domain1.com;
    return 302 $scheme://domain1.com$request_uri;
}

Now check the configuration for errors, run

nginx -t

if no errors, restart nginx:

service nginx restart

So, its really that easy to redirect using nginx configuration

    By Posted On
SENIOR DEVELOPER at MICROPYRAMID

Need any Help in your Project?Let's Talk

Latest Comments
Related Articles
Daemonizing any command with SUPERVISOR Ashwin Kumar

Daemonizing a command means to make it run as a background process.

so when we have a command that we want to daemonize there are ...

Continue Reading...
TMUX - Sharing terminal between Users Jagadeesh V

More Often you wouldve come across sharing screens with applications like Teamviewer, Windows Remote Desktop Connection or remmina (if you're a linux user). But if ...

Continue Reading...
Configuring WordPress Blog as sub-directory alongside Django in Nginx Ashwin Kumar

Using regular expressions within Nginx we can bind urls to particular application servers, below we will configure wordpress blog and django site to be deployed ...

Continue Reading...

Subscribe To our news letter

Subscribe to our news letter to receive latest blog posts into your inbox. Please fill your email address in the below form.
*We don't provide your email contact details to any third parties