Alternatives for 301 Redirect to Inform Crawlers of New URL?


Question

Are there techniques to let search engines know a page has moved other than 301 redirects?

Background

Hell Migration

We recently migrated our knowledge base from one vendor to another and it’s gone very poorly from an SEO perspective. The pages don’t do anything you need for SEO to work, and the new platform has severely limited options to address the situation

The URL Journey

1. Original Article: /en-us/Getting-Started

It started with vendor 1, oh how we loved you and your ability to woo search engines with you well structured content and great search results.

2. New Busted Article /article?id=123

Then the new vednor came, it worked and passed all the user tests, got testing sign-off and headed to production. None of us were wise to the fact the new page was dynamic and slow and crawlers couldn’t find titles or descriptions for the page.

3. /en-us/Getting-Started -> 301 /article?id=123

So we made the ominous mistake of 301 redirecting all of our old and good vendor articles to the new awful vendor articles. Along with our sitemap and organic and direct traffic from the old url a fair amount of crawlers made the switch to the shitty version of that page.

4. /article/Getting-Started

Fortunately we were able to figure another approach and the search engines are much happier with their cached snapshots with proper titles and descriptions. We’ve submitted new site maps and the good pages are showing up.

How can I deal with the Busted URLs

Unfortunately we’re still seeing results for /article?id=123 with their useless titles and all of our rank they’ve stolen from the original good vendor.

Option 1 301 Redirect – Not Possible on Platform

I’d love to use a 301 redirect than all the original ranking finds it’s home on the page that gives google decent info to work with.

Option 2 rel canonical – Too Slow

I could add rel canonical to tell searchs the good stuff is at the new url, and merge our ranks. But the page is so slow i don’t expect the crawlers to actually see it.

Option 3 stripped page, rel canonical, client side redirect – Maybe?

I could strip down the page to just a rel canonical link to the good page, and then redirect to the canonical. But then the content on my supposedly duplicate pages won’t look the same at all, which seems like might cause problems.

What should I do

Option 3 is the only option I can see, but I have zero idea how google feels about the page with the rel canonical link and no other content by a client side redirect going to the new page.

Is this a workable approach? Or should I just give up on this one.

Why no 301 Redirects

For the curious, this is a Salesforce “Lightning” Community, kind of a CMS on steroids with a Salesforce connection, which is is in turn built on top of a product call Force.com sites. There is some basic support for 301 redirects on the Force.com sites, but they aren’t supported for routes in the “CMS” part of the platform. So I was able to use 301 redirects when we migrated vendors, since that url pattern was not in the “CMS” path, but I can NOT for the implementation that is having trouble with crawlers.

Here is Solutions:

We have many solutions to this problem, But we recommend you to use the first solution because it is tested & true solution that will 100% work for you.

Solution 1

If you are not able to use 301 redirects, I would strip the page and put in a client side redirect.

  • The client side redirect will get users where they need to go, opposed to a canonical which is sometimes honored by search engines and never used by users.
  • Search engines do pay attention to client side redirects. Both JavaScript redirects and meta refresh. They aren’t as foolproof as 301 redirects, but they usually work.
  • Stripping the page will prevent search engines from indexing the old page. Search engines don’t index blank pages.

In this case you will do the best you can of getting search engines and users to the new page. I guess that throwing in the canonical wouldn’t hurt, but I wouldn’t rely on a canonical without the client side redirect.


You also need to find a better web host. All good web hosts give you the ability to redirect. I might be able to live without redirect facilities, however the paired performance issues you are experiencing are unacceptable. There is no way to have SEO or user experience without a speedy site.

Solution 2

It’s a little unclear exactly what the issue with the 301 redirects is, but if you previously set them up you should be able to do it for the new pages as well.

Since you now have 3 potential URLs for the same page, you need 2 redirects both pointing to the canonical page. In other words:

  • /en-us/Getting-Started -> 301 /article/Getting-Started
  • /article?id=123 -> 301 /article/Getting-Started

Furthermore, you shouldn’t discount using canonical tags entirely. They may be slow to update but they help in many other situations such as when any useless parameters are added to the end of a URL (sometimes happens with links from social media). It’s definitely worth adding them anyway.

Note: Use and implement solution 1 because this method fully tested our system.
Thank you 🙂

All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

Leave a Reply