htaccess 301 redirect entire site but with exceptions
You're attempting to mix mod_rewrite
with mod_alias
, but the RewriteCond
statements cannot condition the Redirect
statements, as they don't come from the same module.
I believe you want something more like this, if I've correctly understood what you were trying to accomplish:
RewriteEngine On
RewriteCond %{REQUEST_URI} !=/events/index.html
RewriteCond %{REQUEST_URI} !=/calendar/index.html
RewriteCond %{REQUEST_URI} !=/info/faq.html
RewriteRule ^.*$ http://mynewsite.com/$0 [R=301,L]
Redirect 301 /info/faq.html http://mynewsite.com/my-page
I had a similar issue. Trying to redirect an entire domain with the exception of its robots.txt file. Tim's answer didn't work for me, but this did
RewriteEngine On
RewriteRule robots.txt - [L]
RewriteRule ^.*$ http://www.newsite.com/$0 [R=301,L]