"Preferences" button is back in Addons Manager, and opens the main Redirector page. This should make it easier for people on Android to actually edit their redirects, and for everyone that doesn't like the toolbar button.

Removed local copy of ExtensionStorage.jsm, now using the built in one that ships with FF 44 and newer.

Added message on Redirector page that shows that the addon does not work in Private Mode

Added "Base 64 Decode" option to redirects. Updated the UI to show "Base64 Decode", "URL Encode" and "URL Decode" in one dropdown box, instead of adding more and more checkboxes. This slightly changes the format of redirects, but that upgrade is handled automatically.

Mainly an update to make it compatible with the Firefox 4.0 beta versions. Also added translation for simplified chinese.

The main bug that has been bothering people is when urls are opened from outside the browser, they open in the main browser window and a new window if they are redirected. Unfortunately I could not fix this in the 3.6 version of Firefox, but it works fine in the 4.0 versions, just one tab is opened in the existing window.

This is a bugfix release to fix one bug. When you had added a redirect and tried to then edit it again in the same browser session nothing happened, the edit window simply didn't show, although you could edit older redirects. This has now been fixed.

(2.0.1 is just a couple of bugfixes to 2.0. Version 2.0 was a huge upgrade so below are its release notes)

Finally, here is version 2.0. This version includes several of the most requested features and bug fixes as well as some performance optimizations.

Option to unescape matches in include patterns. This means that if you have a pattern like http://foo.com/?url=* which redirects to $1 (the content of the *) and the match is escaped, like http%3A%2F%2Fbar%2Ecom%2Fpath then previously the redirect would fail. Now you can use the option "Unescape matches" which will turn http%3A%2F%2Fbar%2Ecom%2Fpath into http://bar.com/path which makes it usable as a redirect target.

It is now possible to re-order the redirects.

Individual redirects can be disabled, as disabling all redirects at once.

Import and export of redirects to text files is now possible.

Redirects now work on url's that are the result of 30x redirects from web servers. Previously when you entered for example http://foo.com into the address bar and the website sent back a 301 redirect to http://foo.com/new/path then the http://foo.com/new/path url was never checked against the redirects. Well, now it works.

Improved GUI. All configuration options are for example now available in the GUI, it is split up into tabs instead of having everything in the same place and the window is resizable.

Improved performance. Both wildcard and regular expression patterns are now stored as compiled regular expressions, instead of being created from string patterns during every single redirect. Some more checks have also been added to make sure that we exit as soon as possible in those cases where redirects should not apply.

More protection from shooting yourself in the foot. The dialog to create redirects will now warn you if your pattern doesn't match your example url, or if your redirected url also matches the redirect, possibly causing an endless series of redirects. During redirection it is also checked whether the redirected url matches the same redirect that created it, if so a warning is displayed to the user and the redirect is disabled. This will stop the user from issuing endless requests to the same url. It is still possible to have one redirect from A to B and another from B to A, the current safeguard functionality doesn't detect cycles like that.

Refactored to get rid of 'eval' and 'wrappedJSObject' so it passes all validations at AMO.

Note: This new version only supports version 3.5.* of Firefox. It is highly likely that it would work without problems on the 3.0.* series, but since I am not putting in the effort to test on those version, I will not report them as being supported. If anyone feels like testing this, let me know and if everything works I'll add them as supported versions on AMO.

Finally, here is version 2.0. This version includes several of the most requested features and bug fixes as well as some performance optimizations.

* Option to unescape matches in include patterns. This means that if you have a pattern like http://foo.com/?url=* which redirects to $1 (the content of the *) and the match is escaped, like http%3A%2F%2Fbar%2Ecom%2Fpath then previously the redirect would fail. Now you can use the option "Unescape matches" which will turn http%3A%2F%2Fbar%2Ecom%2Fpath into http://bar.com/path which makes it usable as a redirect target.

* It is now possible to re-order the redirects.

* Individual redirects can be disabled, as disabling all redirects at once.

* Import and export of redirects to text files is now possible.

* Redirects now work on url's that are the result of 30x redirects from web servers. Previously when you entered for example http://foo.com into the address bar and the website sent back a 301 redirect to http://foo.com/new/path then the http://foo.com/new/path url was never checked against the redirects. Well, now it works.

* Improved GUI. All configuration options are for example now available in the GUI, it is split up into tabs instead of having everything in the same place and the window is resizable.

* Improved performance. Both wildcard and regular expression patterns are now stored as compiled regular expressions, instead of being created from string patterns during every single redirect. Some more checks have also been added to make sure that we exit as soon as possible in those cases where redirects should not apply.

* More protection from shooting yourself in the foot. The dialog to create redirects will now warn you if your pattern doesn't match your example url, or if your redirected url also matches the redirect, possibly causing an endless series of redirects. During redirection it is also checked whether the redirected url matches the same redirect that created it, if so a warning is displayed to the user and the redirect is disabled. This will stop the user from issuing endless requests to the same url. It is still possible to have one redirect from A to B and another from B to A, the current safeguard functionality doesn't detect cycles like that.

* Refactored to get rid of 'eval' and 'wrappedJSObject' so it passes all validations at AMO.

Note: This new version only supports version 3.5.* of Firefox. It is highly likely that it would work without problems on the 3.0.* series, but since I am not putting in the effort to test on those version, I will not report them as being supported. If anyone feels like testing this, let me know and if everything works I'll add them as supported versions on AMO.

Version 1.7
Released May 10, 2009
18.0 KiB
Works with
Firefox 3.0 - 3.5b4

This version updates Redirector to support Firefox 3.5, while dropping support for the 2.0.* series. The version does not add any new user features. Instead it is a technical update, with a lot of the core functionality re-written to pave the way for the upcoming 2.0 release which will contain many new features. As of this release the "only if link exists" option is no longer available and redirects on POST requests will no longer work. This is a side effect of the new implementation, since I have not heard from a single user that uses these features I decided that it was ok to remove them. Contact me if that is a problem for you.

Although not really "user features", here is a list of the technical changes for those interested:

* Redirector is now an implementation of the nsIContentPolicy interface. Before there were different ways used to catch requests depending on whether it was opened in a new tab, new window, came from the outside etc. This new implementation works fully for any case and makes the code a lot cleaner and maintainable. It also makes sure that the requests to the original url are never made, they are blocked before they leave the browser which was not always the case in the old version.

* The format of the redirects is no longer JSON, and is not eval'd to import. This was taken out for security reasons, since v2.0 will support importing redirects from others, and it is not safe to eval something from the outside.

* The Redirector class itself is now a javascript XPCOM component, which makes it a true global object, whereas before there were multiple instances which communicated through preferences and preference listeners (a big hack basically).

Version 1.6
Released May 24, 2008
25.0 KiB
Works with
Firefox 2.0 - 3.0.*

This version pretty much adds all features and fixes that people have been asking for, that’s why I bumped the version all the way up to 1.5.2. Here’s what’s new:

* Firefox 3 compatibility * Improved UI in the Redirector settings window * Access Redirector settings through the statusbar icon. Left click disables Redirector, right click shows settings. * Ability to hide context menu and status bar through about:config, just search for redirector and you’ll find the config options. * Replacement chars ($1,$2…) for wildcards as well as regular expressions. * Help file included with examples, accessible through the Redirector settings window. * Possible to add exclude patterns in addition to the normal include patterns, this makes capturing certain things simpler. * And last but not least, redirects now work when opening new windows, new tabs, middle clicking links, opening bookmarks and opening urls from other applications.

One feature was removed in this version, that is the xpath redirect urls. The reason is that as far as I know no one was using the feature and it was causing some problems so I decided to remove it. I think this addon is pretty much feature complete at this point, I don’t think I’ll work more on it except to fix bugs from now on. Enjoy :)

Bugfix release. Version 1.0.1 never got out of the sandbox so I'll list the fixes from that here to.

1. Fix missing statusbar icon on linux2. Fix error that came in the error console when Redirector was disabled 3. The stop button was always active and it looked like pages never finished loading.4. There were some memory leaks when opening and closing new windows.