Setting up Redirects (Redirectors)

You can set up any number of redirects to cause certain URLs to redirect to other URLs. There a two common situations in which this is useful:

  • When your Webvanta site is replacing a previous site, you should add redirects for your popular pages (all pages, if practical), so that existing links will continue to work.
  • When using a link in an advertisement or an email, sometimes it is helpful to create short, readable URLs that redirect to specific pages.

Creating a Redirector

In either case, the process is the same:

  1. Choose Redirects from the Settings menu.
  2. Click the Add Redirector button.
  3. The Catch URL field will be highlighted. Enter the URL that you want to redirect. Note that this should not include the domain name; it should be only the part of the URL that follows the first slash.
  4. Click the Save button.
  5. Click on the word Blank in the Redirect URL column.
  6. Enter the URL (only the part after the first slash) for the page to which you want to redirect.
  7. Click the Save button.
  8. By default, the redirect will be a 301 type (permanent). If the change is temporary, you can click on the text 301 Moved Permanently and change the type.

Examples

Catch URLRedirect URLDescription
index.html/Redirects accesses to an old home page URL to the new home page. Webvanta pages don't need any file type extension.
blog.phpblogRedirects accesses to www.site.com/blog.php to www.site.com/blog
articles/my-article.htmlarticle/12345-my-articleRedirects access to an old static article page to a database-driven page in the Webvanta system
specialspecials/best-price-bbqProvides a simple URL that you many want to use in an ad, while giving the actual page a keyword-rich URL

Deleting a Redirector

To delete a redirector, just hover over that row and click the delete icon.

Using Wildcards

By default, redirects are exact matches. You can enable use of wildcards in the Catch URL by adding a Global Setting (Settings > Global Settings) named admin.redirect.regex and setting the value to "true" (don't enter the quotes). (There's a slight performance penalty for enabling this feature, and it can produce some surprising behavior if you don't fully understand it, which is why it is not enabled by default.)

When this is enabled, a simple subset of regular expression (regex) syntax is available in the catch URL:

  • * will match any number of characters
  • ? will match any single character
  • ^ sets an an anchor at the start of the URL
  • $ sets an anchor at the end of the URL

For example, you may have a series of pages on an old site that you want to redirect to a single page on the new site. The "catch URL", for example, might be ^specials*, which would match specials, specials-summer, specials123, etc. You might redirect to specials.

This assumes that you don't want to replicate each of these old pages on the new site, but just keep all those old URLs going to something useful—perhaps a page that lists all the current specials.

Or perhaps the same page existed in two locations on the old site: directory-one/pagename and directory-two/pagename. You could redirect from ^*/pagename$ to new-site-directory/pagename.

Note: Because this uses regex-style matching, if you simply specify a string for the catch URL, the redirector will match any URL that includes that string. For example, if you set the catch URL to "help", it will also match not only "userhelp" and "user-help" but also "help/topic1" and "help/topic2". As a result, if you have subpages, such as help/topic1, they will become inaccessible, because the redirect will catch them.

To avoid this sort of problem, if you enable regular expressions, you should always use the start and end anchors so you don't match more than you intend. for example, if you set the catch URL to "^help$", then it will only match that exact URL. Since URLs sometimes have trailing slashes, which are otherwise generally benign, you may want to set the catch URL to "^help?$".

Limitations

Only one redirect is processed for each request. So if you redirect to a URL that also has a redirect defined, the second redirect will not be processed.

The wildcard feature is limited to the * and ? wildcard characters; you cannot use other regular expression syntax, despite the suggestive name of the setting that enables this feature.

You cannot capture part of the catch URL and insert it into the redirect URL. So you can redirect any number of URLs to a single new page, but you cannot use it to map a group of pages to another group of page. To do this, you'll need to create a redirect for each URL.