Htaccess redirect generator is a tool to create bulk Apache mod rewrite code for .htaccess file. Copy and paste two columns with old and new urls (for example from Google sheets or Excel) into the first field. Push "Generate" button. Htaccess 301 redirect generator will create permanent redirect code you need to insert into your .htaccess file.
Write down your old and new urls in some table like Google sheets. Use only correct urls with "http" or "https" or just relevant without domain name.
Mark, copy and paste both columns into first field of htaccess generator. Spaces between the urls and line breaks will be inserted automatically.
Also, you can use any text editor to prepare urls, but be careful with line breaks.
By default "delete old host names" option is selected and schema, domain check skipped. If You need more flexible solution for further usage on other hosts, staging or testing environments, there is an option to strip new host name also. But, if you need to be sure that rules be applied exactly, with conditions on certain hosts, better not to strip.
Most common situation is when You replacing urls containing query strings with urls without query strings. This is why the default action with query strings is to skip ones. Also possible to add query string to new url or to combine old and new query strings. You will need to select the appropriate 301 redirect generator option.
Let us consider an example: /old_url?str1=val1&str2=val2 .
If to choose "Exact match", urls with exactly the same quiery string will be redirected.
If to choose "Exact set", only /old_url?str1=val1&str2=val2 and /old_url?str2=val2&str1=val1 will be redirected.
If to choose "Contain", any of the urls like /old_url?str1=val1&str2=val2&str3=val3, /old_url?str2=val2&str1=val1&str5=val5 will be redirected.
In rare cases, if your valid new url contains special chars like "#"(%23), you may need to choose an option "Do not escape new urls" in order to obtain good results after 301 redirect.
The order of the rewrite rules is important. Check Your .htaccess file for redirect rules. Be sure that more narrow rewrite rules are before more wider ones. So, if You have htaccess RewriteRule 301 redirect for a whole directory, You need to ensure that your page to page rules are before one. Be careful with htaccess "Redirect 301" or "Redirect permanent" rules. They work on a directory basis and can work in parallel with RewriteRule.
First of all, do not insert the code inside common code block generated by WordPress, Joomla or other CMS, because this way the code can be overwritten after CMS update. Place the code at the begging of the file or where other already working redirects located.
"Redirect 301" or "Redirect permanent" is a directive of mod Alias, but not mod Rewrite. There are a lot of reasons for not to use it. It can't do checks and operations with query strings. It can't check domain names. It will redirect whole directories, but not individual urls. Finally, It has a separate flow. If you have a lot of old redirect rules with mod Alias, please, use 301 RedirectMatch generator for htaccess.
Spaces, commas and semicolons can be a part of urls. This tool do not support automatic CSV format recognition and escaping. If You have such symbol in urls, You will need to choose another separator in your CSV data and htaccess mod rewrite generator options to avoid problems with the generation of rewrite rules.
For example, You can refer Apache documentation. More about mod_rewrite 301 redirects here.