Summary: It's sometimes the case that you'll want one URL to automatically forward to another. We'll look at several approaches to redirecting URLs.
How do I redirect a web page to another? I have a page with a .dk top level domain and one with .com and would like the .dk to automatic forward visitors to my .com domain. I've found 4 lines on the web describing the code but it doesn't work. And can the same be done if you just own the domain name and doesn't have space on a web server?
•
This is one of those things that I do just infrequently enough that I can never remember the exact syntax, and I end up looking it up again from the last time I did it.
Fortunately there are a couple of ways, depending on what kind of access you have to your domain and/or server, and what kind of functionality your domain registrar or DNS provider gives you.
•
1. Registration Only; No Server
If all you've done is register the domain, but have not actually provided for a web server to serve up pages from that domain, you'll be relying on the DNS functionality that your registrar has provided. DNS is normally where you tell the world "this domain is at that IP address" (using an A record). Without a server there is no IP address, so you need to do something different.
One common approach is to create a CNAME record. It's similar to an A record except that it says, in effect, "this domain is really that domain". The "catch" if you want to call it that, is that the web server that will eventually serve up pages for this domain must know about it.
For example: "ask-leo.net" has a CNAME record to say that it's really "ask-leo.com". That at least gets it to my web server. I then had to configure my web server to handle requests for "ask-leo.net". I happened to configure it to redirect those requests to "ask-leo.com". (See the URL Rewrite discussion at the end of this article for just how that was done.)
Another approach, depending on the features your registrar or DNS provider gives you, is called a "url redirect". That allows you to specify something much like "this domain should redirect to that page". This is also very powerful in a couple of different ways.
Without any server-side work, "askleo.info" redirects to "ask-leo.com". All it took was a URL redirect in my registrar's DNS control panel. Perhaps more interesting is "newsletter.ask-leo.com" which uses a URL redirect to send you instead to "ask-leo.com/newsletterinfo.html". This actually relies on features supplied by your DNS provider or registrar, so you'll need to check for availability.
All of the steps above involve dealing with your DNS provider. I say "DNS provider or registrar" above because most registrars provide DNS functionality as part of their service these days. What I can't tell you are the specific steps you need to step through to set an "A" record, create a "CNAME" record, or create a "URL redirect". Exactly how that's done will vary based on which DNS provider you happen to be using, which features they happen to expose and how.
Server With Only ".html" Access
If the domain you want to redirect is already pointing at a server on which you can place ".html" files, there's another technique that doesn't require any DNS work at all. It uses HTML to perform the redirection automatically. The technique is typically referred to as a "meta refresh", and is the one who's syntax I keep forgetting.
Here's the entire contents of the page "http://ask-leo.com/currentnewsletter.html":
<html>
<head>
<title>Ask Leo! - Leo's Answers Latest Newsletter</title>
<meta http-equiv="refresh" content="0;url=http://ask-leo.com/leos_answers_82_june_15_2007.html">
</head>
<body>
<p>
Redirecting to latest newsletter. If you're not redirected within a couple of seconds,
click here:<br />
<a href="http://ask-leo.com/leos_answers_82_june_15_2007.html">Leo's Answers #82 - June 15, 2007</a>
</p>
</body>
</html>
The line of interest is the fourth line that begins with "<meta". The operation is "refresh" which means to "refresh" the current page with the information that follows. The content begins with a zero, which is the number of seconds to wait, and then the URL that you should be taken to. Thus when you visit http://ask-leo.com/currentnewsletter.html you'll be immediately redirected to the page containing the current newsletter.
Most of you will, but not all. Meta-refresh can be disabled by the user so the alternate, manual approach is still required. That's why it's important to include the text in the actual page instructing people to "click here if you're not automatically redirected".
In your case I'd put on your domain.dk home page a meta refresh of the form:
<meta http-equiv="refresh" content="0;url=http://domain.com">
Servers With URL Rewriting
I'm expecting that the prior methods will be appropriate for 99% of the people who might be interested in the topic. But I feel I have to include this technique for the 1% group - the group that I'm actually in, since this is what I do for most of my sites.
If you have an Apache web server, or another server that supports the same functionality, and it's configured to allow URL Rewriting in .htaccess files or you have access to the configuration files for the web server, then you can do redirection a slightly different way.
First, you would simply point your domain to your web server as if you were actually hosting it there. In your case, you'd go ahead and point your ".dk" domain with an "A" record to your web server.
Then, you would configure your web server to actually host that domain.
Finally, either in the configuration files for that site on your web server, or in the .htaccess file in the root of where the pages for "domain.dk" would reside, you would place the following:
RedirectPermanent / "http://domain.com/"
That'll send all the requests to the redirected target.
(I realize that statement is technically not URL rewriting, but it's close enough for this discussion. Full URL Rewriting is incredibly powerful and complex and well beyond the scope of this answer.)
Related:
Article C3063 - June 21, 2007
Thanks for the redirect tip. I just put
Redirecting
instead of a manual link. It worked better in my circumstance. Posted by: Mike at February 4, 2009 9:35 AMI am using Bravenet co.nr and would like to redirect to my new website which is a .com. I did html access which worked when I click "webpage preview in microsoft publisher. But when I put the page into bravenet I get "The webpage cannot be found"
Please Help.
Posted by: Warren at March 14, 2009 9:26 PMHi
I just bought a domain name from google. I am wondering how to add this domain to an existing page? Thanks!!!
Posted by: Fernanda at March 19, 2009 1:58 PMGood information. I generally use 301 redirects for all my domain redirection - it helps forward my retained pagerank of my old domain to my new one.
Posted by: PHPmoz at June 24, 2009 2:49 PMHi Leo,
Great article.
Question - doesn't the html redirect screw up your page with Google (i.e. de-indexing). I was going to use it but others have warned me against it.
Cheers! Calvin
26-Nov-2009
Posted by: Calvin Mah at November 25, 2009 11:26 AM