iFinity Blogs 

Using Multiple Domain Names on a DotNetNuke site

Jul 16

Written by:
Thursday, July 16, 2009 11:32 AM  RssIcon

One of the questions I'm getting asked with increasing regularity is how to set up at DotNetNuke site to use multiple domain names.  It seems many people are out buying domain names by the bucketful and pointing them all at their website to gain some use out of the money spent. 

Often the multiple domains question comes in after someone has installed the Url Master module and found that one of the domains is showing an unlicensed message.  This post is not specific to licencsing requirements of that module (for that, please read the Url Master FAQ Page).

Reasons for having multiple domain names

There are many reasons why you might want to have multiple domain names setup for your site.  These could be :

- transitioning the site from an old domain to a new one (company name change, or perhaps a better domain name became available)

- targeting two separate lines of business on a single site, and having a domain name to suit each

- setting up the .com, .net, .org etc versions to all go to the one site

- setting up commonly mistyped versions to all go to the one site.

The list is no doubt longer and as varied as the range of all domain names in the world.

How to setup your DotNetNuke site to allow multiple domains

It's the easiest thing in the world to set up DNN to use multiple domain names for a site.  You just go into the Site Settings page and add a new Portal Alias for your site.  Then set up an IIS host header so your website responds to the domain name, and just like magic, the site will start working.

DNN works by taking the domain name the site was requested under, and then using that domain name to generate all the other links in the site (menu items, skin object links, etc).  Of course you can circumvent this by explicitly entering a domain name in a manually-entered link, such as in a blog post or Text/Html module.  It's also possible that some modules don't use the DNN Friendly Url API properly, and will randomly pick the portal alias to generate links with - usually the first alias in the list.

When you have a link in your site to www.myotherdomain.com , and then click on that link, all the other links will be generated with myotherdomain.com.  So once you start displaying content for a single page on a second domain name, then, just like magic, the entire site is available on that other domain name - it's like entering through to an alternate universe where everything is the same but the website Urls.

When it comes to search engines, they index all the links on your site.  If they find a link which points to your 'other' domain, then it will follow that link, and all the links on that page.  Before you know it, an entire duplicate copy of your website is indexed and published in search engines.  Believe me, it can and does happen.  At one point the entire ifinity.com.au website - blog posts, forum threads, the lot was indexed by the IP Address.   This is called Duplicate Content.

Before I take the discussion further, I need to cover Duplicate Content, as related to Search Engines and SEO.

Duplicate Content and Search Engines

You hear a lot about Duplicate Content these days, and almost always in a negative manner.  The accepted advice is to avoid it like the plague.  Instead of me repeating this advice, let's look into what Duplicate Content is, and what to avoid.

Taking from the Google webmaster help section:

"Duplicate content generally refers to substantive blocks of content within or across domains that either completely match other content or are appreciably similar"

Ok, so this means wherever you have a webpage that is available under two different Urls, you've got duplicate content.  A duplicate Url might be the same page expressed in two different ways (ie www.mydomain.com/default.aspx?tabid=45 and www.mydomain.com/tabid/45/default.aspx) or the same page under two different domains (www.mydomain.com/tabid/45/default.aspx and www.mydomain.net/tabid/45/default.aspx)

Google (and other search engines) actively look out for Duplicate Content and they don't want you to do it.  Duplicate content can be used by spammers to fill up search result pages with the same content generated over and over.  This doesn't help the searcher find what they are looking for, and search engines' success depends on giving their users quality search results each and every time.  So, there's a chance that Google will blacklist your site if it decides you're using Duplicate Content for reasons outside their guidelines.  They make it clear that duplicate content itself is not disallowed within their index, but only when it is used to manipulate rankings.

So you want to avoid Duplicate Content on the off chance that your site could get blacklisted.  It's not likely, but the chance is there.

To me, however, there are far greater concerns with Duplicate Content than the possibility of getting banned.  These are the fact that you split up your incoming links amongst Urls, and the search engine might end up showing the wrong page in the search results.

The first, splitting up incoming links, to me, is the big problem.  Most of us are chasing rankings for fairly obscure search phrases, and we don't have that much competition.  Sure, some people are chasing top ranking for 'credit cards' but I don't think they'll be needing my advice anytime soon.  Because the competition is actually pretty thin, you just need a bit more ranking to make it to the top.  As most of us known, ranking is largely determined by the number of incoming links to your domain / url.   Let's imagine a hypothetical situation where, to get to the top of the rankings for a search phrase, you'll need 4 good quality incoming links.  If you get two incoming links, you'll be in position 10, and if you get 3, you'll be in position 4.  (note, this is a vastly simplified example to illustrate my point, it's never this straightforward).

If you have 4 people linking to your domain, off to the top you go.  If you have two domains for your site, and so end up with 2 links to 2 domains, you're in the middle.  If you have 4 domain names, and 4 people each choose 4 different domains, off to the second page you go, and no traffic for you.  Again, it's a vastly simplified example, but you should have got the point by now.  You absolutely want to have a single domain (and by this, I also mean a unified www vs non-www policy) for your site.

The other big problem with duplicate content is that search engines don't want to show multiple versions of the one piece of content.  They want the results page to show a diversity of information.  So the search engine will choose a particular version to use for their results, and the rest go into the 'supplemental results' bin.  This may or may not be the one you want.  That's the whole reason for creating the Canonical Link element - and you should definitely consider using this.  However, Canonical Link Elements don't solve the problem of dividing your incoming links amongst domains and failing to accumulate PageRank.

So, with that, let's agree that we don't want to have any duplicate content on our site, and therefore we don't want to have our site working with two separate domains.  Of course, if you don't care about search engine ranking, then by all means publish your site under multiple domains, but I still think it's a bad idea because you really just want one address for your site.

What to do with those other domain names?

So far we've established that:

1. It's dead simple to setup multiple domain names for a DotNetNuke site by entering another portal alias

2. In doing so, it's quite possible that you could have an entire copy of your site indexed by a search engine

3. You don't want your entire site duplicated in a search engine index.

That doesn't really answer what to do with those other domain names you might have, or have been using.  To recap our reasons for having multiple domain names, they generally fall into two camps:

1.  You just want the user to end up on the site, even if they enter the 'wrong' domain name

2.  You want to actively pursue a slightly different niche using a different domain name for marketing reasons

In case '1', what you need is to set up a 301 redirect for an entire domain, so that no matter what Url is entered, they end up at the correct page, but also on the correct domain.

In case '2' you need to formulate an effective strategy of utilising your other domain, and in my opinion, creating a duplicate of your site under another domain is an ineffective, or even counterproductive, way of doing it.

Using Url Master to redirect an entire domain

If you have the Url Master software for your DotNetNuke site, you can redirect entire domains to your chosen domain.  At this stage, you need to modify a setting in the web.config file.  In a future version you will be able to just do this with a point and click, but for the moment there's no interface to do this.

Here are the steps:

0. Back up your web.config file.  You're going to be changing a setting in this file, so take a backup so you can get your site back quickly.

1. Open up your web.config file in a text editor, and find the iFinity.UrlMaster Friendly Url Provider entry.  You can do a quick search on the file for name="iFinity.UrlMaster" - this will find where the provider entry is located. 

2. Within the <add name="iFinity.UrlMaster" ... /> line, add in a new attribute which looks like this:

usePortalAlias="0,www.mydomain.com;"

Where 0 = the portal id (if you only have one portal, it should be portalId '0'

and 'www.mydomain.com' is the domain you want all requests to show for.

3. Save your web.config file and try out your site.

What this setting does is force all requests to go to the chosen domain in the 'usePortalAlias' setting.  In other words, any request for a portal alias which doesn't  match the one in the web.config file will be redirected to the domain specified.

If you have more than one portal in your site, and you want to specify an alias for those other domains, then name them like this:

0,www.mydomain.com;1,www.myotherportal.com;5,www.yetanotherportal.com;

Note that I included an id of 5.  This is to show it's not a 1,2,3 setup : rather you need to identify the unique portal id for the specific portals.  You also don't need to do every portal if you don't want : only the ones which can have multiple domain names.  If you have a child portal, then enter it like this : www.mydomain.com/mychildportal.  The entry must match the value of your portal alias, as specified in your site settings page.

After this is done, any request for an unwanted url like www.myotherdomain.com/my-unique-page.aspx will be 301 redirected to www.mydomain.com/my-unique-page.aspx - and, if you have duplicate content from different domains, the search engines will consolidate the content quickly, removing the duplicates from their indexes forever.

I realise that this process goes against the user-friendly point and click nature of the module, be assured a point and click interface is in the works.  Some installs have many, many portals, so care is being taken to design a responsive and intuitive interface to achieve this.

If you don't have the Url Master module, well, I'm not sure of any other ways to achieve this in DNN and still maintain the relative page urls.

Strategies for unused and niche domains

The final thing to cover is what to do with those other domains you've bought?  I'll repeat an example a recent customer asked me about.  In their case they had a domain which was like 'company-plumbing.com'.   They also had another domain like 'company-heating.com'. 

In this case, lets assume they want to capture the customers who are looking for heating specifically.  This is a great idea : purchasing domains specific to a niche works well in searches (particularly local-based searches).  It's also useful for Google Adwords landing pages : you can let the user realise that the destination site is a close match to their search query.

In these cases I would set up another site.  It might be a minisite or a complete other website.  A minisite is just a one-page site which is optimised for a particular search.   In our example, let's say we wanted to setup a minisite to capture the heating market.   It's dead-simple to do : just create a new portal in our DNN install, setup the IIS configuration to match the new domain, and away you go.  You can re-use your skin, logos, everything.  The important difference is that you won't duplicate the actual content.  In our heating example, the company would write in great detail how they were an expert in installing and fixing heating in a particular local area.  They would then include links back to their main site (company-electrical.com) for other information, such as contact forms, quote requests, etc).  If the company actually had two divisions, then you might start to consider two separate sites with different staff, phone numbers and the like. 

The crucial thing is to create an optimised landing page to capture the search/advertising market for a specific market niche that matches your other domain name.  Doing it like this achieves two objectives : you're maximising the use of your other domain name, and you're isolating it from your main domain name and avoiding duplicate content problems.

Finally...

I always set out to create short but informative posts, but there is so much information to convey they all tend to err on the long side.   This is important stuff : it's too easy to just throw another domain name into the mix and hope/think it will magically produce better results for your site.  This is never the case : each domain name needs to have a careful and planned strategy behind it so that you can maximise the value of your domain and your content.

Have you had a good or bad multiple domain name story?  I'd love to hear about it in the comments.  An inspirational or cautionary tale is always a good thing.

Tags:
Categories:
Location: Blogs Parent Separator Crafty Code

6 comment(s) so far...


Gravatar

Re: Using Multiple Domain Names on a DotNetNuke site

Hi Bruce,

If you have access to IIS or to DNS tools you can/should solve your multiple domain issues there, isn't it?
Within you DNS tools you can use CNAME and in IIS you can set up a re-direct website that catches all the spare domainnames and point them to the main domainname (refering to your case '1' from above)?

What are the advantages of using URL master in this situation (i.e. in case you have access to IIS or DNS)? I know URL master does much more as well but that is another story.

Peter

By Peter Schotman on   Friday, July 17, 2009 8:10 PM
Gravatar

Re: Using Multiple Domain Names on a DotNetNuke site

@peter - the main reason for using Url Master to solve these issues is twofold:
1) it will redirect your exact url and maintain everything but the domain name (ie, redirect to the same page but with the same domain). As far as I am aware in my experience, the IIS redirect will just send the request to the root domain and 'lose' the specific page of the orignal request. If I'm wrong here, please let me know
2) setting up the redirect in Url Master (while more difficult than I woudl like) is still simpler than sorting out the redirect in IIS. For a lot of people using hosted websites, they don't have access to the redirect functionality of IIS

By Bruce Chapman on   Friday, July 17, 2009 10:32 PM
Gravatar

Re: Using Multiple Domain Names on a DotNetNuke site

Hi Bruce

A client of mine has about 20 domains that all essentially point to the one DNN portal. They use specific domains eg energy.site.com to point to redirect to specific pages within their site. eg redirects to site.com/whatwedo/energy.aspx
1) is this an acceptable thing to do in terms of SEO?
2) is there a way to do that using your module or do I need to use IIS?

By Mark Chambers on   Thursday, May 06, 2010 8:12 PM
Gravatar

Re: niche domain

I get the first part of setting up a portal and portal alias but just want to make sure of when you mention IIS configuration do you mean adding a host header to the existing website ?

By Alain deliperi on   Wednesday, May 12, 2010 2:53 PM
Gravatar

Re: Using Multiple Domain Names on a DotNetNuke site

@alain : yes. You need to add in the domain as a host header in IIS, so that requesting the domain name reaches the DNN application

By Bruce Chapman on   Wednesday, May 12, 2010 2:56 PM
Gravatar

Re: Using Multiple Domain Names on a DotNetNuke site

@alain : yes. You need to add in the domain as a host header in IIS, so that requesting the domain name reaches the DNN application

By Bruce Chapman on   Wednesday, May 12, 2010 3:03 PM

Your name:
Gravatar Preview
Your email:
(Optional) Email used only to show Gravatar.
Your website:
Title:
Comment:
Add Comment   Cancel