Safe Redirect Manager
An easy to use, powerful redirection manager.
Safely manage your site’s redirects the WordPress way. There are many redirect plugins available. Most of them store redirects in the options table or in custom tables. Most of them provide tons of unnecessary options. Some of them have serious performance implications (404 error logging). Safe Redirect Manager stores redirects as Custom Post Types. This makes your data portable and your website scalable. Safe Redirect Manager is built to handle enterprise level traffic and is used on major publishing websites. The plugin comes with only what you need following the WordPress mantra, decisions not options. Actions and filters make the plugin very extensible.
Configuration
There are no overarching settings for this plugin. To manage redirects, navigate to the administration panel (“Tools” > “Safe Redirect Manager”).
Each redirect contains a few fields that you can utilize:
“Redirect From”
This should be a path relative to the root of your WordPress installation. When someone visits your site with a path that matches this one, a redirect will occur. If your site is located at http://example.com/wp/
and you wanted to redirect http://example.com/wp/about
to http://example.com
, your “Redirect From” would be /about
.
Clicking the “Enable Regex” checkbox allows you to use regular expressions in your path. There are many great tutorials on regular expressions.
You can also use wildcards in your “Redirect From” paths. By adding an *
at the end of a URL, your redirect will match any request that starts with your “Redirect From”. Wildcards support replacements. This means if you have a wildcard in your from path that matches a string, you can have that string replace a wildcard character in your “Redirect To” path. For example, if your “Redirect From” is /test/*
, your “Redirect To” is http://google.com/*
, and the requested path is /test/string
, the user would be redirect to http://google.com/string
.
“Redirect To”
This should be a path (i.e. /test
) or a URL (i.e. http://example.com/wp/test
). If a requested path matches “Redirect From”, they will be redirected here. “Redirect To” supports wildcard and regular expression replacements.
“HTTP Status Code”
HTTP status codes are numbers that contain information about a request (i.e. whether it was successful, unauthorized, not found, etc). You should almost always use either 302 (temporarily moved) or 301 (permanently moved).
Note:
- Redirects are cached using the Transients API. Cache busts occur when redirects are added, updated, and deleted so you shouldn’t be serving stale redirects.
- By default the plugin only allows at most 1000 redirects to prevent performance issues. There is a filter
srm_max_redirects
that you can utilize to up this number. - “Redirect From” and requested paths are case insensitive by default.
- Developers can use
srm_additional_status_codes
filter to add status codes if needed. - Rules set with 403 and 410 status codes are handled by applying the HTTP status code and render the default WordPress
wp_die
screen with an optional message. - Rules set with a 404 status code will apply the status code and render the 404 template.
- Browsers heavily cache 301 (permanently moved) redirects. It’s recommended to test your permanent redirects using the 302 (temporarily moved) status code before changing them to 301 permanently moved.
Developer Documentation
Safe Redirect Manager includes a number of actions and filters developers can make use of. These are documented on the Safe Redirect Manager developer documentation micro-site.
Cindy on
We have your plugin installed and have been using it with no issues. However I just tried to create a new redirect and it gave me an error saying I have reached the limit to the number we can have?
There is a limit?
Is there a way around this?
If there is a limit and there is no way around it then it should say that in the description or information about the plugin.
If there is a limit and no way around it then we are going to have to install a different plugin and manually move all of our redirects over since we need to be able to create more in the future.
If we had known your plugin has a limit we would have either been prepared for that eventual issue or to be honest we would have chosen a different plugin from the beginning.
Thank you,
Cindy
Jith Paul on
Encountering this issue on cpac.ca as well. When we post a link on facebook, the preview works correctly, however clicking on the link leads to a 404 page since the click-through URL has ?fbclid=IwAR2BRj…. etc.
N LeVasseur on
Awesome plugin! I am wondering how to edit a redirect. It seems like a redirect can only be used once. I’ve tried editing one – that is changing the “redirect to” page, and it fails. Can someone provide a solution so I can edit a redirect?
Thanks!
Art Storey on
Hey guys I love this plugin. Thank you! It’s now my official recommendation for a redirection plugin because it supports wildcards and regex.
Jeff Paul on
Art – thanks for the kind words and recommendation! Let us know if there’s anything additional you’d like to see in the plugin as we’re always on the lookout for what will most benefit the community.
Jeff.
Sariya on
Thanks for the awesome plugin.
I’m just curious. Is there a way to import/export? I’ve moved my website 4 times through 3 different CMS. I have 216 redirects. It is pain to add them one by one
Jeff Paul on
Sariya – There are WP-CLI commands available within the plugin, including one for importing via a CSV file.
Jeff Paul on
Sariya – a quick update that we’ve included documentation on the WP-CLI commands to the Safe Redirect Manager readme file here: https://github.com/10up/safe-redirect-manager#cli-commands.
John on
I’m just curious as well. Is there a way to add bulk import/export? We have many sites to move and probably over a thousand redirects between them all. We cannot do them one by one.
Please let us know asap.
Jeff Paul on
John – There are WP-CLI commands available within the plugin, including one for importing via a CSV file.
Jeff Paul on
John – a quick update that we’ve included documentation on the WP-CLI commands to the Safe Redirect Manager readme file here: https://github.com/10up/safe-redirect-manager#cli-commands.