Redirection

This page is now deprecated. Please visit the Redirection plugin website

Redirection is a WordPress plugin to manage 301 redirections, keep track of 404 errors, and generally tidy up any loose ends your site may have. This is particularly useful if you are migrating pages from an old website, or are changing the directory of your WordPress installation.

Features include:

  • Supports both WordPress-based and Apache-based redirections
  • 404 error monitoring – captures a log of 404 errors and allows you to easily map these to 301 redirects
  • RSS feed for 404 errors
  • Custom ‘pass-through’ redirections allowing you to pass a URL through to another page, file, or website.
  • Full logs for all redirected URLs
  • Create redirections based upon a URL, browser, referring site, or login status
  • Automatically add a 301 redirection when a post’s URL changes
  • Full regular expression support
  • Fully localized
  • Export all redirections to CSV, XML, or Apache .htaccess files
  • Import Apache .htacces files

Redirection is available in the following languages:

If you can provide a language translation then please get in touch. A PO file is provided with the plugin to be used in translating with poEdit.

Installation

Installation is just like any WordPress plugin:

  • Download redirection.zip
  • Unzip
  • Upload to redirection directory to /wp-content/plugins on your server
  • Activate the plugin
  • Configure options from Manage – Redirection

Note that you must have a permalinks structure setup through WordPress.

You can find full details of installing a plugin on the plugin installation page.

Core Concepts

Redirection uses three core concepts:

  • Modules
  • Groups
  • Redirects

A module consists of many groups, and each group consists of many redirections. A module determines how the redirections will be used, and a group allows you to separate redirections into logical units. A redirection represents an action performed when a particular URL is accessed.

Don’t worry, there’s more to come!

Modules

At the most basic level, a module determines how redirections are implemented. There are three types of module:

  • WordPress
  • Apache
  • 404 errors

The WordPress module uses WordPress to implement redirections. This means it works for all permalink-enabled sites and so has the greatest compatibility.

The Apache module, as you would expect, uses Apache to implement redirections. This means that each redirection is written to an Apache .htaccess file, giving you better performance than the WordPress module, at the cost of less compatibility and less flexibility (some features, such as redirection statistics, are only available from the WordPress module).

Separate from these is the 404 error module. This uses Redirection to keep track of 404 errors.

Modules

Each module can be exported to CSV, XML, or an Apache .htaccess file. You can also view logs for each module via an RSS feed

WordPress Module

The WordPress module is the default module and provides the most features. The main disadvantage of this module is that each time a URL is redirected it requires WordPress to be loaded (contrast this to the Apache module where a redirection occurs before WordPress loads).

This module is configured as follows:

Wordpress Module

These options are detailed below:

  • Canonical – determine whether the www should be removed or added to your site URL.
  • Strip index – if enabled then any attempt to access a index.php, index.html, or index.asp file will cause an automatic redirection to the same URL, minus the index file.
  • Time Limit – sets a site-wide PHP timeout limit. Useful if something is timing out.
  • Error level – sets the PHP error reporting level. Useful for removing unwanted warnings, or for viewing hidden ones

Apache Module

Rather than using WordPress to provide redirections the Apache module writes data to an Apache .htaccess file. If you site supports these then this will give you the greatest performance, at the cost of losing a few items of functionality. For example, the Apache module provides no statistical information so it is not possible for the Redirection plugin to keep track of how many times a particular redirection has been used.

The module is configured as follows:

Apache Module

The options that differ from the WordPress module are:

  • Location – the location of the .htaccess file. The default will be your site directory
  • Ban IPs – prevents certain IPs from accessing your site
  • Allow IPs – allow certain IPs to access your site
  • Raw .htaccess – add custom rules
  • Site URL – an advanced option which allows you to set the site base URL

Note that when writing to a .htaccess file the Apache module will retain any existing non-WordPress data, so you can still add custom rules.

404 Module

This module is a little different to the others in that it is designed to record 404 errors. Rather than make this a general function, as in previous versions, the power of this module comes from the fact that redirections created inside it will be ignored from the 404 log. In other words, the module records all 404 errors except the specified URLs. Combined with the RSS feed this gives you a lot of options to keep track of errors on your site.

404 Errors

If you do want to ignore a 404 error (for example, you site may not have a favicon.ico and you don’t want this recorded) then you should create redirections as normal, but set the action to ‘Do nothing’. As for other modules you can create redirections based upon any action or rule, or matching a particular regular expression.

Groups

A group is a logical collection of redirected URLs. You can create as many groups as you wish, and groups can be re-ordered. URLs are matched based not only on the order in which they occur within a group, but the order in which groups occur within a module.

Group Edit

As well as allowing you to collect redirections together, you can also specify whether the redirections within a group are logged.

As an additional configuration option you can select which group an automatically generated URL is put in when a post/page or category is changed.

Using Redirection

The main idea behind Redirection is that you create several URLs that you want to redirect. These URLs are placed within a group, which in turn is placed within a module. The module determines how the URLs are redirected, and the group allows you to logically organise the URLs.

Each URL (or redirection) can be configured to behave in different ways. When creating a redirection there are several pieces of information you must provide:

  • Source URL – This is the original URL that you want to redirect somewhere else
  • Match – This tells the plugin how you want to match the source URL
  • Action – Determines what happens if the URL is matched
  • Regular expression – Tells the plugin that the source URL is a regular expression (i.e. a pattern that may match many URLs)
  • Target URL – most actions have a target URL. This is typically the URL that the user will be redirected to should the pattern match

Create

Note that items can be re-ordered and this may influence which redirection takes effect.

Matching URLs

Matching a URL is a key part of Redirection and consists of a source URL. This URL must exactly match a URL that you want to redirect. For example, your site has the page:

http://yoursite.com/oldpage/that/needs/redirecting/

The source URL for this is: /oldpage/that/needs/redirecting/. The source does not require your website address, and it is only possible to redirect a URL that exists on your website (you cannot redirect an external website, for example).

Advanced users can make use of regular expressions to reduce the number of redirections they need to create. A regular expression is basically a pattern that tells the plugin how to match. For example:

/(\d*)/(\d*)/(.*)

This pattern tells the plugin that you want to match a URL that looks like:

/2007/05/some-url/

That is, the (d*) indicates a number, and the (.*) a sequence of characters. Regular expressions are a complicated subject and this page will not attempt to give more than a passing overview of using them. If you do need more help then you should take a look at a regular expression website.

Remember that if the source URL is a regular expression then you must enable the regular expression option, otherwise Redirection will just treat you source URL as plain text.

In addition to the source URL you can also specify a match condition:

  • URL only – Only matches the URL (the majority of your redirections will use this)
  • URL and referrer – Matches a URL when the source and referring site matches (i.e. match the URL only when the user came from a certain website)
  • URL and login status – Matches a URL when the source and user’s login status matches (i.e. match the URL only when the user is logged in)
  • URL and user agent – Matches a URL when the source and user’s browser matches (i.e. when the user is using a particular type of web browser)

These special rules can be both positive and negative. For example, you can match a URL when the user is logged in (and be redirect to one URL), or when the user is not logged in (and be redirected to another URL). This makes it very easy to create custom rules where users are redirected if they are using a particular browser, or if they came from a particular website.

Actions

An action tells Redirection what to do when a source URL is matched:

  • Redirect to URL – The default case and the majority of your redirections will use this
  • Redirect to random post – An esoteric action that may be useful to some people
  • Pass through – An advanced option that allows you to masquerade one URL as another (i.e. when the source URL is accessed it actually displays the contents of another URL without the user being aware)
  • Error (404) – Causes a 404 error to be returned
  • Do nothing – A dummy option that can be used if you just want to track accesses to a URL

Configuration of rules and actions

Depending on the particular combination of action and match rule you may be required to provide further details for a redirection.

Basic URL redirection

You can specify which HTTP code is used to redirect a URL (301, 302, or 307):

Redirect Url

A couple of examples:

/blog/(.*) => /$1

This will match any URL that starts with /blog/, and will redirect it to the same URL but without /blog/. For example, /blog/2006/10/01/mypost will be redirected to /2006/10/01/mypost.

/2006/month_(\d+)/(.*) => /2006/$1/$2

This will match any URL that starts /2006/month_, and is then followed by a number. This will be redirected to the same URL, but without month_. For example, /2006/month_1/something will be redirected to /2006/1/something.

To replace a single dash in a URL with a space:

/tags/(.*?)-(.*?) => /tags/$1%20$2

Redirect to URL by matching user agent

This allows you to configure a redirection to occur when a specific browser (the user agent) is used:

Redirect User Agent

A set of pre-defined user agents is available from the drop-down menu or you can specify your own. The user agent match is always performed using a regular expression.

Two target URLs can be specified, one for if the user agent does match, and one for if it doesn’t match.

Redirect to URL by matching referrer

Similar to the user agent rule but this one looks at the referrer. That is, if a user follows a link from another site to yours, the original site is passed along by the browser (unless disabled) to your site so that you know where the user came from. Using this rule you can base your redirections upon this original site.

Redirect to URL by login status

This rule allows you to match a URL based upon the user’s WordPress login status. That is, if they are logged into your site.

Support & Bugs

Support and feature requests should be made through the Redirection support forum. You can contact me directly but I spend a very limited amount of time on direct support and you stand a better chance of being answered through the forum.

If you find the plugin useful then please do consider making a donation – it is appreciated and helps towards the maintenance of the plugin.

Thanks!

1,340 comments

  1. error on upgrade from version 1.7.11 to 1.7.20
    After active the plugin:
    Warning: Missing argument 1 for upgrade() in /home/carinfo/public_html/wp-content/plugins/redirection/models/database.php on line 35

    Warning: Missing argument 2 for upgrade() in /home/carinfo/public_html/wp-content/plugins/redirection/models/database.php on line 35

    Warning: Cannot modify header information – headers already sent by (output started at /home/carinfo/public_html/wp-content/plugins/redirection/models/database.php:35) in /home/carinfo/public_html/wp-includes/pluggable.php on line 275

    I see in redirection.php line 34,35:
    $db = new RE_Database;
    $db->upgrade ();

    Do you mean?
    $this->update();

  2. Dag, if you want to use a regex but not catch the same URL as you are redirecting to then you can use the ^ and $ regex specifiers:

    ^/tag/(.*)$ => /archives/tags/$1

    The ^ means ‘only if at the start’ of the URL, and the $ means ‘only if at the end’ of the URL.

    Thomas, yes that’s possible. Just enter the ‘simple’ URL as the source of an entry in Redirection, and then enter the affiliate URL as the target. That should be it.

    Law, I don’t know why Global Translator would not like Redirection. This functionality has been deprecated now anyway, as WordPress 2.3 has the exact same thing already built in. I’ll have a look to see why there’s a problem anyway.

    Chintse, try the latest version

  3. Hi John,

    Thanks for making this plugin. I was hoping you could help with an error. I upgraded to WP2.3 last week, and upgraded Redirection at the same time. Today, however, it stopped working. I then upgraded to the newest version of Redirection, and I’m receiving this error:
    PHP Fatal error: Class ‘Redirector’ not found in /home/ochbad/public_html/greatjustice/wp-content/plugins/redirection/redirectors/referrer.php on line 22

    Any ideas?

    Thanks much,
    Dave

  4. […] Redirection – Manage 301 redirections without modifying Apache | Urban Giraffe writes: Redirection is a WordPress plugin to manage 301 redirections, keep track of 404 errors, and generally tidy up any loose ends your site may have. This is particularly useful if you are migrating pages from an old website, or are changing the directory of your WordPress installation. […]

  5. Just so I can confirm. Once I installed the latest version of your plugin into my WP 2.3 install, I found that my post urls, if they differed from my permalink structure are now automatically changed to the correct structure, eliminating a lot of dupe content and 404’s. This is your plugin doing this, yes? The reason I ask is that I haven’t had this capability before with the other versions of Redirection (or WP) and I’ve sorely wanted it (I couldn’t expect you to do everything now could I?). Now I seem to have it and I want to make sure it isn’t WP 2.3 doing this which I still don’t believe it has any sort of permalink redirect functions any more than 2.2 had it.

    Either way, good work on a great plugin! It gets better with every revision.

  6. Kirk, that functionality should have been in there since day one (if you have the option enabled – see ‘post slug changes’ above)! Any change to a posts URL (slug, date, or category) will result in a redirection automatically being created from the old to new URL.

    Dave, I don’t know why that error occurs and technically it should be impossible! Does the error disappear when you disable Redirection? Where is the error occuring?

  7. John,

    It does disappear when the plugin is disabled (which is where I’m at now) and then shows up again when I enable. It’s a fatal error that appears on every wordpress page.

    Any recommendations? Reinstall of the plugin, or of WordPress?

  8. Hello John,
    My blog on theashish.com runs your plugin.but I am a bit confused, i have added www through plugin and throught that if anybody will go to http://theashish.com he will be redirected to http://www.theashish.com with 301 redirect. but the problem is that whenever we type http://theashish.com it give a blank page.however http://www.theashish.com works fine.
    Second i added a simple 301 redirect to a page but the redirect code when i checked through webconfs.com header check,it said the redirect is 302.
    here is the blog post url.
    http://www.theashish.com/blogging/8-best-worpress-plugins-to-get-you-started.html
    check it.
    please tell me why is the problem because i tried installing other redirection plugins also but they all give 302. does this mean that i should trust only .htaccess.

  9. […] 1、我们可以借助插件来实现,Redirection这个插件使用Ajax后台管理,操作简单又方便。下载激活这个插件后,到Manage > Redirection > Add new redirection这里设置,例如你要“从http://www.domain.com/blog/转移到http://www.domain.com/”就可以这么做: […]

  10. Marek, you can create a redirection (.*) => http://kokblog.johannak.com/88/

    Ashish, there is a known bug in WordPress whereby a 301 does not come out as a 301 when used on FastCGI hosts. I’ve tried to counter this in the past, but it seems to change across different versions. The latest version should hopefully work on FastCGI hosts. It is possible the blank page was an effect of the same bug. There is no difference between PHP and .htaccess 301 redirects.

    Dave, still no idea why it’s not working but I’ve include some debug in the latest version. If the problem still exists then send me the output from a page (there will be extra info as well as the error message).

  11. I deleted the old plugin, installed the new version, and it’s working now (with all my old settings and logs intact, even). Thanks! I’ll be sure to let you know if the error crops up again. I really appreciate the help. This plugin has been great for my site.

  12. I’ve tried your plugin on two different WordPress blogs and can’t get it to work. I installed in the plugins folder, activated the plugin and then clicked on "manage", redirection and tried to add a redirect using an old url and a new one. I added these then click on "add redirection" but nothing happens, the redirects do not get added and there is no error message. What am I doing wrong? I am using WordPress 2.3
    thanks…Mike

  13. Marek, no, the plugin doesn’t work with WordPress 1.5. If you are using that version you are better off just directly editing the .htaccess file and adding something like this to the old site:

    RewriteEngine on
    RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]

    Mike, can you send me the HTML for the redirection page?

  14. Getting the same problem as Dave does. Using WP 2.3 try adding any redirect nothing happens when I add something.

    I also installed it on my computer (localhost) I have wp 2.2.1 installed, the adding part works on this, however everytime I go to that link I just get HTTP 404. Running Apache on Windows at home. Can you help with the online bug?

  15. Hi,

    I have updated the permalinks structure on my kids website http://www.beybladefun.com/blog
    WP 2.3

    After ‘Activating’ the Redirection plugin I get an error message as follows:

    2007.10.22 14:44 B C:\adelete\WP PLUGINS\redirection\redirectors\login.php –> 209.47.165.59 /public_html/blog/wp-content/plugins/redirection/redirectors login.php 2007.10.22 14:44 B C:\adelete\WP PLUGINS\redirection\redirectors\lucky_dip.php –> 209.47.165.59 /public_html/blog/wp-content/plugins/redirection/redirectors lucky_dip.php 2007.10.22 14:44 B C:\adelete\WP PLUGINS\redirection\redirectors\random_url.php –> 209.47.165.59 /public_html/blog/wp-content/plugins/redirection/redirectors random_url.php 2007.10.22 14:44 B C:\adelete\WP PLUGINS\redirection\redirectors\referrer.php –> 209.47.165.59 /public_html/blog/wp-content/plugins/redirection/redirectors referrer.php 2007.10.22 14:44 B C:\adelete\WP PLUGINS\redirection\redirectors\url.php –> 209.47.165.59 /public_html/blog/wp-content/plugins/redirection/redirectors url.php

    Would apprecitae some feedback as I know this plugin is a gem to have installed.

    Thanks in advance

  16. I reinstalled the plugin, deactivating it first, deleting the files, reuploaded a fresh version activated again no difference.

    When I go to options and delete all options this error comes up

    Fatal error: Cannot redeclare class re_database in /home/fabio/public_html/wp-content/plugins/redirection/models/database.php on line 4

  17. All was working well on WP2.3 for about 2 weeks, then yesterday (without any code changes at all), my site started giving the same errors that Nancy P Redford (below) is mentioning, on every single page.

  18. Nancy, Ken: I don’t understand the errors. The error seems to imply that the plugin is stored in a Windows directory (C:\adelete\MY PLUGINS), yet the rest implies it is stored elsewhere (/public_html/blog/wp-content/plugins/redirection). Which of these is true?

    Fabian & Mike: Can you send me the HTML for the redirection’s page?

  19. I deleted the plugin and uploaded via ftp from my C drive but I still get similar error message when I ‘activate’ the plugin.

    C:\WP PLUGINS\redirection\redirectors\login.php etc…

    I am unsure why the error messages display the origins of my ftp file upload.

    The error is displayed at the top of ALL blog pages.

    I have ‘deactivated’ the plugin for now.

    Is there an alternative way to redirect old URL and avoid 404 errors/

    I read a thread to use the following code but am unsure of what each parameter defines i.e.
    $1 [R=301,L] .

    RewriteEngine on
    RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]

    Could you explain these variables so that I can try to redirect my default WP URL’s to the new ‘Post ID’ and ‘Post name’ Permalink structure.

  20. Nancy, you are right that your original FTP location should not appear on your site, and something must have gone very wrong for that to happen. How did you transfer the plugin to your site? It looks like your FTP program has inserted text into the plugin. Could you download the redirection directory from your site, zip it up, and send it to me? I’ll have a look see if there’s anything there that shouldn’t be.

  21. Thanks John,

    After reading that my FTP program may be inserting a text code I looked and found several log files ‘WS_FTP.LOG’ which was causing the problem.

    I have deleted these log files from each directory and the plugin has been activated successfully!

    Now for the old WP default links to the new post ID and postname structure

    Examples:

    OLD:
    http://www.beybladefun.com/blog/?p=13

    NEW:
    http://www.beybladefun.com/blog/13/free-online-beyblade-fun-games

    What code should be inserted into the SOURCE URL AND TARGET URL?

  22. Hi John,
    I checked in my folders and haven’t got any text files or anything inserted by my FTP software in there. I’ve re-uploaded and everything works OK for a while, then – seemingly at random – the plugin just stops working.

    My error log (in th redirection/redirectors folder) shows…
    [22-Oct-2007 22:28:54] PHP Fatal error: Class ‘Redirector’ not found in public_html/wp-content/plugins/redirection/redirectors/login.php on line 22
    [23-Oct-2007 00:16:12] PHP Fatal error: Class ‘Redirector’ not found in public_html/wp-content/plugins/redirection/redirectors/referrer.php on line 28
    [23-Oct-2007 00:31:10] PHP Fatal error: Class ‘Redirector’ not found in public_html/wp-content/plugins/redirection/redirectors/lucky_dip.php on line 22
    [23-Oct-2007 01:42:01] PHP Fatal error: Class ‘Redirector’ not found in public_html/wp-content/plugins/redirection/redirectors/random_url.php on line 22

    If you see the time and date stamps, you’ll see there is a fair space of time between these errors. I activated the plugin at about 17:00 on that day, and it redirected 600 hits from an old RSS feed URL to the new one before erroring. Nothing was changed and nobody was logged on to the server via FTP so I can’t see what causes it!

    I’ve turned it back on again now and I’ll see how it goes. I’ve set up less redirections than before, in case it was a specific redirection that caused it.

  23. Nancy, enter the source and target URL as relative URLs (i.e. without your site):

    /blog/?p=13 => /blog/13/free-online-beyblade-fun-games

    Ken, technically it should be impossible for that error message to occur as the class that is loading those files is the same class that PHP is complaining does not exist! This leads me to believe that something else is trying to load the files before Redirection. The fact that it only occurs every few hours might suggest some kind of server script?

  24. John,

    Do you think it’s possible or realistic to offer a feature that would automatically convert ALL outbound links, ever created, to use this plugin? That way it I wouldn’t have to enter each and every outbound link, then copy it over to the post, etc etc. to automate all outbound linking, to say.

    then be able to set "all outbound links are 301, they are 302, they are 307," or whatever status code you want.

    just an idea. What do you think about it John?

  25. So let’s say I input a link like this, into the article, that it would automatically change the outbound link to use whatever structure, such as I use, as domain.com/track/#########/ and use that as the link instead of mozilla.com, add it to the management page and track all the outbound clicks.

    that way the author wouldn’t have to manually do that for every outbound link they wanted to track, but rather it would be automatic for every single outbound link ever posted.

    is that a little more clear?

  26. I understand now. I’ll have a think about it for a future version, although it will be tricky to get it working efficiently.

  27. I have installed the newest version of Redirection and am not able to get it working.

    The 404 log shows a bunch of 404’s referring to /plugins/redirection/ files ..

    Am I missing something during installation? I unzipped, uploaded to /wp-content/plugins/redirection/, activated, and then this started happening.

  28. this is a really nice and powerful plugin.
    for now i just need it to auto-link to a child-page since the Page-strucure of the site i’m working on is kind of weird.
    thank you!

  29. Brandon, how are you not able to get it working? If the 404 log is appearing then that suggests that part of it is working.

    Jon, yes it is possible to redirect to external sites. By any chance does this make any difference?

    Fabian, I can’t see anything wrong with the page you posted. The only way for me to find out why it’s not working will be if you can give me a temporary login to a site where it isn’t working.

  30. "Jon, yes it is possible to redirect to external sites. By any chance does this make any difference?"

    Yes, that’s done it! Thanks a lot, I never would have figured that one out.

  31. Great. A couple of people have reported the same problem and it looks like the request is triggering a special Apache security module. I can modify Redirection to work around this.

  32. ok sure, let me get a backup of the db and i get you an account, do you just need access to wordpress?

  33. I use this plugin in my blog and this is a wonderful piece of software. Thanks a lot for sharing this 🙂

    Is there a way we can make it to work as a standalone software without wordpress, into some sort of redirection engine ??

  34. I seem to be having problems. Everything appears to download and install fine, but when I go to manage/redirection to set options I get a corrupted screen which tells me:

    Rendering of admin template /hsphere/local/home/password/johnbakersblog.co.uk/wp-content/plugins/redirection/view/admin/head.php failed

    Rendering of admin template /hsphere/local/home/password/johnbakersblog.co.uk/wp-content/plugins/redirection/view/admin/submenu.php failed

    Rendering of admin template /hsphere/local/home/password/johnbakersblog.co.uk/wp-content/plugins/redirection/view/admin/redirections.php failed

    I can’t understand what I must do to overcome this. Can anyone help, please?

  35. John, are you sure you uploaded the plugin as a directory? Double-check that you have the files mentioned in the errors

    Livingston, I do have planned a feature to ‘export’ the redirections to work directly with Apache. This would effectively be a standalone capability. Just need to find some time!

    Fabian, a WP admin user should be fine for now.

  36. Right. Spot on. My ftp program didn’t copy it all over to the server.
    The error messages have disappeared now.
    Thanks.
    But still one more problem. I have added a redirection from a site outside of wordpress
    to my wordpress site.
    But when I try accessing the site outside wp, I still go straight to it and no redirection occurs.

  37. Redirections from outside your site will have to be handled on the site you are redirecting from – Redirection has no control over this.

  38. John, I wanted to bring something to your attention. It’s quite possible that the Redirection plugin is causing random 404 errors on my site. In other words, a perfectly valid, published post URL will sometimes be redirected to with a 404 error to my home page (which is the default behavior for 404 errors on my site), and will get logged in the Redirection’s 404 log. After I open that post in edit mode and save it, the URL becomes valid once more, and redirection no longer takes place. I don’t believe this is a WordPress error. I also can’t show you specific examples, since I rush to fix any such redirection problems whenever I discover them. It’s very important to me that my published content stay accessible, and I can’t afford to leave it inaccessible for troubleshooting purposes once I discover such an error.

    Can you please investigate this when you get a chance? It’s fairly stressful to discover that a post which you’ve spent considerable effort on, and which ranks quite high in Google’s search results, suddenly gets a 404 error. Thanks!

  39. Raoul, I’ve not experienced this myself and no one else has reported similar effects, so I would be surprised if Redirection was just causing random 404 errors. Do you have any regular expression redirections which may be accidentally matching things? Are entries appearing in the redirection log to indicate that Redirection has done something? Unfortunately because this is one of those “it only happens when you’re not looking” things it’s going to be quite hard to track down! The next time it does happen try disabling Redirection and see if the post still 404s. If it does, re-enable Redirection, access the post again, and see if any of the counters on the redirection page increase. Let me know how it goes.

  40. Thanks John, will do! Haven’t got any regular expression redirects, just simple 301 redirects for posts I’ve renamed or moved. Will let you know if I find something.

  41. Hi, I installed the plugin and activated it, but any new redirection was logged. The section Redirections of redirections.php still read "You have no redirections."

    I found that the table wp_redirection in the db had one field less, "sent_to", than the table wp_redirection_log, so I presumed that I had to add it myself:
    > ALTER TABLE wp_redirection ADD sent_to MEDIUMTEXT CHARACTER SET latin1 COLLATE latin1_swedish_ci NULL DEFAULT NULL AFTER url ;
    The admin page at WordPress still didn’t work so I entered the fields manually in the db:
    url: http://acuteaccent.com/nuclear-watch-out/
    301’d to
    sent_to: http://es.acuteaccent.com/transporte-nuclear-en-londres/
    Now the redirection was visible in the admin area, http://acuteaccent.com/wp-admin/edit.php?page=redirection.php, but the url was redirected to the new one with a message "Redirection loop detected (http://acuteaccent.com/nuclear-watch-out/)".

    WordPress Version 2.3.1

    Thank you!

  42. can this plugin support subdomains? I need to set rewrite something.example.com to show content of static page existing on example.com/rewrite (and possibly redirect from /rewrite to rewrite.)

  43. I’m using the latest Redirection plugin on WP 2.3. I tried adding a new redirection and everything flashed, but the redirection wasn’t added. I see someone else also had this problem in this post.

  44. Tomas, Redirection works on whichever domain WordPress is installed on.

    Acute, you don’t need to add anything to the database structure, and ‘sent_to’ is not needed in wp_redirection. All source URLs should be relative to your site and not have the http prefix

  45. Totally right, I used the relative URL and it works perfectly well.
    John, I would suggest that next to the field title "Source URL" you write "All source URLs should be relative to your site and not have the http prefix" in future upgrades.
    Terribly useful plugin, thanks a lot.

  46. I recently used the Redirectify plug-in to redirect some pages from one WP-powered site I have to another I just created. However, I now want to migrate some posts from the first site to yet a new one, and it seems that with Redirectify, all the posts will remain in the archives and such at the original site. Ideally, I want to truly move the posts from one site to a new one, have them no longer show up at the old site, but have people redirected if they use an old-site URL for one of theses posts. It seems like there’s a good chance your plug-in will accomplish this. Can you confirm?

  47. Plugin looks great, however I get the following error in WordPress 2.3.1 when adding a redirect:
    Array ( [old] => /index.html [new] => / [redirector] => A_Redirector_URL [type] => 301 [add] => Add Redirection )

    WordPress database error: [Field ‘last_access’ doesn’t have a default value]
    INSERT INTO wp_redirection (url,type,regex,position,redirector) VALUES (‘/index.html’,’301′,”,’0′,’O:16:\"A_Redirector_URL\":1:{s:3:\"url\";s:1:\"/\";}’)

    –Patrick

  48. hi

    thanks for this great plugin. only one stupid question. i try to create a redirection based on referer and cant find the edit button to edit it after creation. where can i find the edit link?

  49. Great, thanks for getting back to me on this. I’m trying out, it will be a bit before I can fully implement the way I want, but it looks like things will work the way I’d hoped. Thanks!

  50. Hi. I love your plugin but I got a problem. After updating I go to the manage->Redirections page and I get the following error on all the tabs. Redirections themself seem to still be working.

    Fatal error: Call to undefined function fetch_rss() in /home/hernand/public_html/wp-content/plugins/redirection/plugin.php on line 380

    Any help would be appreciated, Thanks,
    -r

  51. This is such a superb plugin.

    There are so many people sratching their heads trying to edit their .htaccess files. Or trawling through FeedBurner support forums trying to sort out their RSS feeds.

    This plugin does it all in one easy-to-use and well documented solution.

    Donation coming your way!

    CJ

  52. I think there is a little problem with your plugin.

    If I add a new redirection and write an absolute address beginning with "http://" (e.g. http://ww.saphod.net) into the field for the target URL, it is fine at first – but if I edit that redirection, it is somehow masked into e.g. http%3A//www.saphod.net (the ":" is changed into "%3A") which makes the redirect go wrong. Apart from that, it’s a nice plugin.

  53. hello, my question might sound a little dumb, but you state it creates a redirection when the slug changes, does this also catches when en editor moves a post to another category?
    I have had lots of such errors from google bots, when the bot came looking for an article that had moved into another category.

  54. Any change to a post’s slug from the edit page will result in a redirection being created. So yes, if you change a post’s category from the edit page and that results in a new slug then it should be captured.

  55. Hey there, I really love this plugin, it keeps track of 404s and redirects work nicely except when I’m redirecting based on referrer, I’m trying to redirect the feed to a feedburner url if it’s a human reader but when I try editing the redirect, it always says "service temporarily unavailable". Can anyone suggest how I could fix this? Thanks in advance 🙂

  56. Is there a simple way to delete a single redirection that I no longer need? Clicking the red minus symbol next to the redirection does not do anything. Thank you for your help.

  57. 1.7.26 does not work with WordPress MU 1.3 (WPMU), after activating plugin, the plugin page does not work, and you have to delete the plugin to disable it again.

    After activating you can go to the Redirector options page, and see tabs in top, but all pages are blank.

    Also for WPMU would i need to use it on all sites individually or could i control all redirection from the main blog?

    This plugins features rocks so much! And I need it bad 😉

  58. Seems that your plugin (the 1.7.26 one) doesn’t work. The images with your plugin comes out broken and lists all of the broken images in the 404, now. In the source code, it seems to try to pull from both the vanity domain and the full path, such as domain.com/user/www/… etc.

  59. I’ve reverted to previous versions until I hit the one that worked, and 1.7.22 is the cutoff. The moment I upgrade to 1.7.23, that’s when problems start happening.

Comments are closed.