RedirectForge by ThemeMend

Convert .htaccess redirects to a Netlify _redirects file

Paste your .htaccess. You get a _redirects file for your publish directory, with $1 wildcards rewritten as :splat. Free up to 200 rules, no signup. Load an example.

Output

What to know about this conversion

Netlify reads _redirects from the root of your publish directory (or the [[redirects]] table in netlify.toml). Rules are evaluated top to bottom and the first match wins, so the converter preserves your original order.

Netlify has one wildcard, /* at the end of a path, with :splat in the destination. Apache's ^/old/(.*)$ /new/$1 maps onto it exactly; anything with more than one capture, a character class, or a mid-path wildcard is written as a commented line under the rule with a warning.

The usual HTTPS and www RewriteCond blocks are not needed on Netlify: HTTPS is always on and domain redirects are set under Domain management. Those rules are reported, not converted, so you can delete them knowingly.

Frequently asked questions

What does the ! after a status mean?

Force. Netlify normally serves an existing file instead of applying a redirect to that path; 301! applies the redirect even when the file exists. Apache redirects always take precedence, so the converter does not add ! automatically; add it by hand where you need shadowing.

Which default status does Netlify use?

301 when the status column is omitted. Apache's Redirect without a status is a 302, so the converter writes the status explicitly on every line to avoid a silent change.

Can Netlify do regex redirects?

No. Netlify supports :param segments and a trailing splat only. Patterns that fit those shapes are converted; the rest appear in the warnings with their line numbers for a manual rewrite.

Other pairs: .htaccess to Cloudflare, .htaccess to Netlify, Netlify to Vercel, nginx to Cloudflare, or any format to any other.