Redirect site with .htaccess but exclude one folder

Try this mod_rewrite rule:

RewriteEngine on
RewriteRule !^uploads($|/) http://example.com%{REQUEST_URI} [L,R=301]

This rule does match any URL path that does not begin with either /uploads or /uploads/ (leading / is missing in the pattern due to the path prefix removal when used in .htaccess files) and redirects the request to the corresponding path at example.com.


Simple answer I just stumbled upon myself.

At the top before any other calls add the following

RewriteRule ^(uploads) - [L]

I think you want this:

RewriteEngine on
RewriteCond %{REQUEST_URI} !^/uploads/
RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]

If you get 500 Internal Error then double-check that you have a space between } and ! on the second line.