Products » Knowledge Base » Url Master 

Url Master Help Wiki

301 Redirect a Url to a DNN Page


Creating a 301 redirect from any Url to a DotNetNuke page is very simple with the Url Master module.  This is achieved through the Admin->Page Urls page.

Here's how to do it:

1. Go to the Admin->Page Urls page in your site.

2. Select the page in your site you would like the redirect to go to.   You are selecting the destination of the redirect, not the starting Url.  When you select the page, the rest of the page details should fill out, showing the name, the current Url, and other details.  The list of current Urls defined for this page will show in the table of Urls, which will also show the current Http status codes returned for those pages (200 - OK, 301 - Redirect, etc)

3.  Click the 'Add Url' button to add a new Url for the selected page.

4.  Type in the Url that you would like to redirect from.  This should be the portion of the Url without the http:// and without the domain name (or portal alias) for that site.

For example, if we are redirecting from http://example.com/oldurl.aspx to http://example.com/newurl.aspx then we would enter 'oldurl' as the Url.

If the page extension you would like to redirect from ends with .aspx, do not enter the page extension.  Just add the Url and the software will figure out the rest.  Otherwise it will be looking for oldurl.aspx.aspx - which is the wrong value.

If you're redirecting away from a page extension that is different from your site extension - for example example.com/oldurl.htm to example.com/newurl.aspx then you do enter the value as 'oldurl.htm'

If you're redirecting away from a Url with no extension, you just do the same - enter the url as is.  For example: example.com/oldurl to example.com/newurl.aspx or example.com/newurl, you still enter 'oldurl'

5.  Select '301 - Perm Redirect' as the Http Status for the Url you've just entered.

6. Click on 'Apply Changes'.

You can now try out the old Url, and it should redirect to your new url as intended.

Troubleshooting 301 Redirect Problems

The first thing to do is to try the 'Test Url Rewriting' function, in the Host->Friendly Url Settings page.  This will return a 301 redirect status if you have set up the redirect correctly.

If the Test Url Rewriting function is working OK, and the redirect is still not working, the most likely problem is with the mapping of the page extension to the ASP.NET runtime through the IIS configuration.  In other words, IIS isn't telling the DNN installation to handle the Url when you enter it.

If the redirected Url has no page extension, then you need to make sure that the extension is mapped correctly - see Switching off page extensions in IIS if you need to use an extension-less page.

If you are redirecting from an old Url that mapped to a physical page (ie index.asp, index.htm, somepage.php) then you will need to make sure the page no longer exists on the server.  The Url Master module will not redirect a Url when the actual file exists on the server.  It is designed to ignore these in order to preserve the functionality of DotNetNuke.

Also, you can trace the behaviour of request redirections by using Microsoft Fiddler - see Using Fiddler to Trace Http Requests




 |  View Topic History  |