I am always surprised by how much confusion surrounds redirects
and how many IT departments say they "cannot be done" due to
technical limitations.
There are two basic types or redirect:
- Permanent - 301
- Temporary - 302
From an end users point of view both of these redirects will
achieve the same result, i.e. the user will enter the URL for page
A and will be presented with page B (in both the browser and the
address bar).
The big difference between these is how they are interpreted by
the search engines. A 301 redirect indicates that the change
is permanent and the search engines will update their indexes
accordingly. This means that the value of the links coming
into page A will be attributed to page B.
302 redirects on the other hand tell the search engines that the
change is temporary and as such the value of the links is not
transferred to page B.
The only other thing to take into account with redirects is
whether they are page level (i.e. Page A -> Page B) or domain
level (bayshield.com -> www.bayshield.com).
Setting up a 301 redirect in Apache and IIS (the two major web
servers) is quite easy and is shown below.
Apache 301 Redirect
One way to setup a 301 redirect in Apache is to create a
mod_rewrite redirect rule, which you can add to either the apache
config file or .htaccess file.
A simple 301 page redirect rule looks like:
RewriteEngine on
RewriteRule ^page1\.html$ page2.html [R=301,L]
IIS 301 Redirect
To setup a domain level 301 redirect
please refer to my previous post.
To setup a page level 301 redirect, open IIS and expand your
site in the treeview until you find the file you want to redirect.
Then right click on the file and select properties which will
display the screen below.

Select the 'A redirection to a URL' option and then enter the
destination URL which can be on the same domain or a different one.
Finally be sure to select the 'A permanent redirection for
this resource' checkbox. Failure to check this box will
result in the redirect being created as a 302 redirect rather than
a 301.