Sunday, June 01, 2008

Permanent (301) and Temporary (302) Redirection Using PHP

Redirection is the method of forwarding users to a new domain or URL when they try to reach the old one.

Suppose my friend Ralph had once created a website at:

and after sometime created yet another website on the sub domain:

Now he wants to have his blog (second website) on a new separate domain name. Since he already has lots of readers who visit the old URL, he has to find some way to let them know the new URL. The easiest way yet the most effective would be to use Redirection.

Actually, there are two types of redirection, permanent and temporary. In the above case when Ralph wanted to permanently move to a new domain he should use Permanent Redirection. In some other cases when webmasters have to move from, say a domain to a sub domain due to some temporary problems they could use Temporary Redirection.

301 Permanent Redirection

‘301’ here is the HTTP response code sent by the server to the client. Server sends HTTP codes for each request received from the client. These codes reflect the type of response received from the server. Some other codes sent are 200(OK), 404 (Not Found), 50x (Sever Problems etc.

When redirected in this manner many web applications such as browsers (Bookmarks actually), Search Engines etc. Update their data to have the new domain instead of the old one. Thus Permanent Redirection is also a way to tell these application especially Search Engines that a particular site has moved to a new address.

The following PHP code can be used to do this:

// 301 Permanent Redirection Using PHP Script
header("HTTP/1.1 301 Moved Permanently");


Put this script as ‘index.php’ on the root of the old domain. Be sure to change ‘’ to whatever you’d like to redirect to.

302 Temporary Redirection

First off, Temporary doesn’t mean that the redirection would stop automatically or anything; in fact you can use a Temporary Redirection forever, it just means that you plan to redirect for a short period of time and therefore browsers and Search Engines do not need to make any changes to their data.

Use the following code to achieve this:

// 302 Temporary Redirection Using PHP Script


Again don’t forget to change ‘’.

One thing to note here is, there is no difference in how user would get redirected in the two types of redirections. In both the cases user will reach the new URL, difference is for how long you’ve planned to do so. If you’ve permanently moved to a new URL and use 301 redirection, address in browsers, search engines etc. will change and eventually there would be no trace of the old URL.

Previous Articles:

No comments:

Post a Comment

You are free to comment anything, although you can comment as 'Anonymous' it is strongly recommended that you supply your name. Thank You.

Please don't use abusive language.