Redirection using .htaccess

Most websites are constantly changing "works in progress" and as one updates, rearranges and reorganizes data, avoiding broken links due to relocated content is a common issue. While there are numerous ways to redirect requests for outdated URLs to the files in their new locations (javascript, META refresh tags, PHP or SSI includes etc) one of the quickest and most effective ways to redirect is using .htaccess directives.

With .htaccess one can either have an individual page forward to another page or even redirect entire directories. The syntax for redirection is as follows:

Redirect /oldfile.ext https://domain.com/newfile.ext

(Redirect - relative path to the file's old location - full URL of the file's new location)

Example 1:

You move a file named "file1.html" from a folder named "abc" into a folder named "xyz" and you wish to automatically redirect users entering the old URL to the new location:

Old URL: https://domain.com/abc/file1.html
New URL: https://domain.com/xyz/file1.html

Redirect /abc/file1.html https://domain.com/xyz/file1.html

Example 2:

You rename an entire directory named "current" to "2002" and you want any links pointing to files in the old /current directory to automatically forward to the file's new location in /2002:

Redirect /current https://domain.com/2002

Things to Note

The Redirect directive supported in .htaccess files is a useful however very basic tool, even more complex/advanced redirection is possible using mod_rewrite.

  • 5 Users Found This Useful
Was this answer helpful?

Related Articles

Preventing bandwidth theft using .htaccess

While all HostRocket plans include plenty of bandwidth (transfer) nobody ever has enough...

Blocking users by IP address using .htaccess

Should you find that a few unruly visitors are causing you problems by posting unwanted messages...

Directory protection using .htaccess

One of the more common/popular uses of .htaccess is to password protect specific directories...

Creating custom error pages using .htaccess

One of the many things one can do to make their website a little more professional-looking is to...

Setting a default index page using .htaccess

By default our servers will look for (in order) a file by the name of index.html, index.cgi,...