I don’t know when it started, but as I write this (June 2018), domain forwarding on the registrar GoDaddy is awful.
Recently, a client acquired a company with several websites and asked me to direct all traffic from the acquired website to a single page on an established site — like “redirect
new-domain.com/some-page/“. That would have been trivial with a .htaccess file but the old hosting accounts had expired during the acquisition so the trivial solution wasn’t available. The domains were registered with GoDaddy, and forwarding the domains using GoDaddy’s deceptively simple form seemed the best solution.
old-domain.com/def/worked fine, redirecting to the base redirect url
new-domain.com/some-page/. But URLs for individual pages, like
old-domain.com/page.html, were redirected by GoDaddy to what seemed to be the error page of a link-shortening utility. Two long battles with GoDaddy support ended with them telling me that’s just how it is and that I don’t understand how the internet works.
Which is true enough, I suppose, but that didn’t solve my problem and luckily other people do know how the internet works.
To fix the issue (without having to purchase hosting or talk with GoDaddy support again) I set up the old domains in a Cloudflare account, pointed the GoDaddy DNS settings to the assigned Cloudflare name servers, then used a Cloudflare “Page Rule” (see image) with a couple of asterisks as wildcards to forward everything hitting the old domains to the new landing page. A free Cloudflare account provides 3 page rules, if you need more than that they cost $5/month each.
This is a workable but not perfect solution. Perfect would be for the registrar’s domain forwarding to redirect without an error page intervening, but GoDaddy has messed this up.