Web site redirection methods: One can forward a web page URL or home page using the following web page with the "Refresh" directive:
This commands the browser to refresh the page with the new specified URL.
Web site redirection methods:
- One can forward a web page URL or home page using the following web page with the "Refresh" directive:
<META HTTP-EQUIV="Refresh" Content="0; URL=http://www.company.com/dir1/">
|
This commands the browser to refresh the page with the new specified URL.
- Use a CGI script to forward a home page: (mod_cgi)
- File: httpd.conf
ScriptAlias / /var/www/cgi-bin/redirect-script/
|
File: /var/www/cgi-bin/redirect-script #!/usr/bin/perl
print "Status: 301 Moved\r\n" .
"Location: http://www.new-domain.com/\r\n" .
"\r\n";
|
- Use ASP method to forward
<%
Response.Redirect "http://www.w3schools.com"
%> |
- Use Apache module (mod_rewrite)
- File: httpd.conf
RewriteEngine On
RewriteRule /.* http://www.new-domain.com/ [R]
|
Forwards all references in entire domain.
- Use Apache module (mod_alias )
- File: httpd.conf
- Redirect Domain:
Redirect / http://www.new-domain.com/
|
- Redirect Page:
Redirect /web-page.html http://www.new-domain.com/destination-web-page.html
|
Note: Redirect directives take precedence over Alias and ScriptAlias directives.
- Apache 301 redirect using the .htacess file:
If one wants to permanently forward an entire web site to a new URL or forward a single page permanently and have the search engines update their database, one should use a 301 redirect. This may redirect to a new server or to inself but to a different domain. This tutorial shows how. This method is a variation of using the mod_alias redirection shown above except that it allows the customer to redirect themselves by providing a .htacess file themselves.
File: .htaccess Create a file /home/domain/.htaccess in that directory of the domain to be forwarded that looks something like this: - Redirect entire domain:
Redirect 301 / http://www.new-domain.com/
|
Note: The use of the "/" at the end of the redirected domain. This is necessary so that http://www.old-domain.com/page1.html will be redirected to http://www.new-domain.com/page1.html.
OR - Redirect specified pages:
Redirect 301 /old-page-1.html http://www.newdomain.com/new-page-1.html
Redirect 301 /old-page-2.html http://www.newdomain.com/new-page-2.html
|
You may use the following directives:
- 301: permanent
- 302: temp
- 303: seeother
- 410: gone
For example: Redirect permanent / http://www.newdomain.com/
|
If an incorrect directive is used in the httpd.conf or .htaccess file it will result in a server error. Check your log files: /var/log/httpd/error_log.
| HTTP Code | Status | Description |
|---|
| 301 | permanent | The resource has permanently moved |
| 302 | temp | The resource has temporarily moved |
| 303 | seeother | The resource has been replaced and refer to new resource |
| 305 | UseProxy | Use proxy to access site |
| 307 | Temp | The resource has temporarily moved |
| 410 | Tegone | The resource has permanently removed |
See RFC 2616 HTTP/1.1 protocol - Chapter 10.3