Niahc
Niahc

Reputation: 164

How do I redirect an entire site to a new domain using .htaccess?

I have a site that is moving to a new URL, an exact copy of the original with the same pages and URL structure. I'm working with the old domain's .htaccess file to redirect to the new one, and have this:

Options +FollowSymlinks 
RewriteEngine On
RewriteCond %{HTTP_HOST} ^oldsite.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.oldsite.com$
RewriteRule (.*)$ http://newsite.ca/$1 [R=301,L]

The redirect works when I go to oldsite.com or www.oldsite.com works as expected, and redirects to newsite.ca

However, when I go to something like oldsite.com/blog/, no redirect happens. It just stays at the same URL.

I want to be able to redirect every page to the new site, not just the root. oldsite.com/blog/ should redirect to newsite.ca/blog/

I need this for the whole site without having to go through and redirect every single page individually. Is this possible?

Upvotes: 0

Views: 388

Answers (1)

Niahc
Niahc

Reputation: 164

Figured it out-

I moved my code to the top of the .htaccess file.

The code wasn't being executed because there was a www to non-www before it. Apparently the code is run in order, and if a redirect is found, it will not run another kind of redirect following it.

Upvotes: 0

Related Questions