301 Redirects
-
Hi,
We have migrated to a new domain name and I wrote my redirects as follows:
Redirect 301 / http://www.healthpointe.net
Redirect 301 /urgent_care_locations.shtml http://www.healthpointe.net/healthpointe-locations/
Redirect 301 /locations.shtml http://www.healthpointe.net/healthpointe-locations/
Redirect 301 /career_client_relations_rep.shtml http://www.healthpointe.net/careers/
My issue is that when I include the first redirect, which is to the main page of the website that the other redirects stop working. Any idea what the problem could be?
-
It would have been allot easier if you had used the same url names as the old site.
If there is a way for you to change your url slugs to the old ones you can use this simple bit of code in the .htaccess file to redirect all old urls to the new one:
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www.newdomain.co.uk
RewriteRule (.*) http://www.newdomain.co.uk/$1 [R=301,L]My guess that it isn't working would be that maybe "/" isn't the original home page of your old site? Do you have a "index.html"or similar and are using a .htaccess rule in your old site to determine what the root page should be?
Maybe your .htaccess file should look like this:
Redirect 301 /index.html http://www.healthpointe.net
Don't forget to tell Google webmaster tools that you have changed the address of the website - https://support.google.com/webmasters/answer/83106?hl=en
-
It's failing because of the order. With Redirect 301 / http://www.healthpointe.net first, all other pages that were after / will not work. Also, going to David's answer, redirecting a /index.html is a special case, and there are a few ways around it such as using DirectoryIndex index.html at the top of the file or with a rewrite condition such as:
RewriteCond %{THE_REQUEST} ^./index.htmlRewriteRule ^(.)index.html$ http://www.domain.com/$1 [R=301,L]