How To Run Multiple Sites On WordPress 3.0 On Separate Domains

So we were eager to test the multi-site functionality of WordPress 3.0 beta. While it’s not for the average end-user to toy around with and most may not even need this function, setting it up in not very difficult either. However our goal was to use the multi-site functionality on TLD (or stand-alone/add-on domains) and not on a sub-domain or sub-directory hierarchy. Here’s a step-by-step walkthrough. Please understand that this is not for the average wordpress user but for webmasters who know what they are doing and talk the jargon.

  1. Setting up the domains

    This section will deal with configuring the domains.

  2. Installing WordPress

    This section will deal with configuring the wordpress installation.

  3. Domain Mapping

    This section will deal with configuring the secondary sites on their own domain (instead of subdomain or subdirectory)

  1. Setting up the domains:

    1. Setup your main domain. This may involve the basics like registering it, setting up the nameservers, setting up the hosting etc. Once you have the hosting setup and you are ready to upload the files, follow these steps before installing WordPress.
    2. Let’s refer to your primary domain as www.primarydomain.com and let us refer to your secondary domain as www.secondarydomain.com.
    3. Wildcard DNS: Create a subdomain on your primarydomain.com called “*” (without quotes). This will make sure that <some-random-sub-domain>.primarydomain.com does not return a 404 error.
    4. Park your secondary domain: Add www.secondarydomain.com as a parked domain in your account.
  2. Install WordPress

    1. Install WordPress 3 at www.primarydomain.com as instructed in the official documentation and setup your first site.
    2. Add the following line to your wp-config.php file define('WP_ALLOW_MULTISITE', true);
    3. In the wordpress admin section go to Tools > Network. Choose subdomains amongst sub-domains and sub-directories. Follow the instructions on the screen to finish the network setup.
    4. Once you finish the network setup you’ll have the Super Admin menu activated on the admin screen.
    5. Go to Super Admin > Sites. Add a new site (for the secondary domain). For now we’ll have to set it up as a subdomain and we’ll later map it to the main domain. Let’s create it as secondary.primarydomain.com.
    6. Browse to this site and verify that everything is fine.
  3. Domain Mapping

    1. Download the wordpress-mu-domain-mapping plugin. Extract it to a temporaty folder.
    2. Upload sunrise.php to wp-content.
    3. Upload domain_mapping.php to wp-content/plugins/
    4. Edit wp-config.php and add define('SUNRISE','on'); and use the “Network Activate” option to activate it (find it on the plugins manager page).
    5. Set the server Ip address to the ip address of www.primarydomain.com (find that by pinging www.primarydomain.com).
    6. Log into http://secondary.primarydomain.com/wp-admin
    7. Go to Tools > Domain Mapping
    8. Under “Add new domain” enter secondarydomain.com and check “Primary Domain for this blog”. Click “Add”.
    9. Now your secondary site will be available at www.secondarydomain.com instead of secondary.primarydomain.com.

I hope you find these instructions helpful.

27 Comments

  1. This plugin sounds great! I was just wondering if setting this up will interfere with other add-on domains that don’t use WordPress/use a different installation?

    Reply
  2. Thankx, this article was really helpful, and very clear.
    I will traduct it in French as soon as possible !

    Reply
  3. very very helpful. Thank you.

    Reply
  4. Thanks for this cool explanation. However I’m sort of stuck at the creating a wildcard dns. Please clarify step 1.3 and 1.4

    Cheers
    Dian

    Reply
  5. Diane: this may largely depend on your hosting provider. Basically you are creating a subdomain named “*”.

    Reply
  6. I get as far as uploading the amended wp-config.php to the server, and checking the plugins section. However, I cannot activate it. In the plugin manager, there is a tab for Drop-ins, and the message that appears is:

    sunrise.php – Executed before Multisite is loaded.

    I’m stuck!

    Reply
  7. Is there any way each of the mapped domains can have a different IP (Located on the same server)?

    Thanks

    Reply
  8. I am unable to find .htaccess file in my root wordpress directory . I created few wordpress based websites. Now I want to have mutiple sites using wordpress3.0.1 . In the steps Tools–> Network–>……. there is one step to add something to .htaccess file in the wordpress root folder. And I am unable to find it. Please help me .

    Thanks in advance,
    Sweety.

    Reply
  9. sweety: the htaccess file exists only on Linux based hosting. Also you’ll have to configure your ftp client to show hidden files. You may want to call up your hosting provider for further details.

    Reply
  10. I have successfully enabled multisite, installed MU Domain Mapping and added a second site mapped to a new domain. Everything is working fine, but I have a question about privacy:

    My original site is my business site and the new site is entirely personal, and supposed to be anonymous. However, when you watch the browser’s (firefox) path to the new site while it loads (in the address bar at the bottom), you can see it hit the original site address just before the plugin maps it to the new site domain. Occasionally when the servers are busy you can see “waiting for originalsite.com” before it gets mapped.

    Is there any way to keep visitors to the new site from ever seeing the address of the original site?

    Reply
  11. Nice guide, but how would this affect SEO, if at all?

    Reply
  12. Hi, this guide really helped me out. Thanks for publishing. I have set this up successfully, however
    any additional pages for the secondary domain do not load when I set theskeeves.com as primary instead
    of theskeeves.soulowner.org. Any insight you can share is greatly appreciated.

    Reply
  13. Does each website can have its own theme ?? if the websites use the same images for some posts , do i have to upload the same image 2 times ?? thanks for your help !! wonderful post

    Reply
    1. Yes. Each site can have it’s own theme. For an image that is already on the server you can just use it’s URL.

      Reply
  14. When I get to 2.6 “Browse to this site and verify that everything is fine” I get returned an empty page from my webhost that says:

    Unconfigured Site
    No match was found. Domain is not configured.

    This is a fresh 3.04 install with multisite active and .htaccess set up as directed. Do you think this a WP problem or a host issue? I do have a wildcard dns entry, verified by accessing randomstring.mynewsite.com and getting the same result as the WP subdomain site that should be active. Thanks.

    Reply
  15. Similar problem as Matt at 2.6 xxx.yyy.com returns:

    “Server not found. Firefox can’t find the server at xxx.yyy.com.”

    Any ideas? Thanks

    Reply
  16. hi,..

    I followed everything and it worked out great.

    I was just wondering how i can make subdomains for www.secondarydomain.com.

    Reply
  17. Hi,

    Im wondering something similar to aditya. I have a multisite operating on www.primarydomain.com however I am curious whether it is possible to operate the same multisite on www.secondarydomain.com (different face for the same service) whereby users could select what domain they wanted their blog to be added under, either user1.primarydomain.com or user1.secondarydomain.com

    Is that clear? 🙂

    Reply
  18. Hello Shivanand/Convertica!

    I just discovered your site while searching for an answer to the question, “How do I know whether or not I should use a multiple site installation of WordPress?”

    Background: I am a rookie, I have the Studiopress/Genesis package, I have a web host and I’ve installed a basic WordPress site (NOT a Genesis site yet), i.e., my primary domain.

    I have purchased two more domains for friends and they are sub-directories listed on the domain area of the control panel (the web host does not us a “cPanel”–just called “Control Panel”). My goal is to install and manage WordPress sites for them once I learn the ropes for my site. I want them to be able to tweak their sites with the Dashboard as any other WordPress.org user might do (pages, posts, comments, media uploads, etc.), but leave more in-depth stuff such as SEO, security, design changes, plugins, widgets, etc. to me.

    I could just install separate installations of WordPress for each of those [second and third etc.) domains, is that correct? But I still don’t understand: what would be the advantage of using one installation with multiple sites as you outline, using separate domain names (instead of something like, “secondsite.myprimarysite.com”), versus re-installing WordPress each time I add a domain (a new site for another friend)?

    The idea intrigues me and maybe it would be easier as the network administrator, but I’m just not sure and even the new “WordPress All-In-One for Dummies: 8 books in 1” wasn’t clear on this.

    Thanks for your help!

    Reply
    1. Good question. Actually multisite comes in when you have to frequently create new WordPress sites. So all of them run off a single installation of WordPress (no need to reinstall WordPress everytime), they have common plugins – so no plugin installation required for every new site (each of which can be separately turned on/of for each site). The same goes for the themes too. This also has utility in a corporate environment (far-fetched) wherein every user may want to have their own wordpress blog or if you want to offer a wordpress blog service and allow users to be able to register their own blogs.

      Reply
  19. I have installed seven wordpress installations on different sub domains. These sub domains are hosted on different hosts. This way I am able to share load with different hosts.

    Reply
  20. Dear Shivanand Sharma,

    Congrats ad Thanks for the plugin, I kindly ask you if it’s possible to assign those new domains to different IPs.

    Example: site1.ws (IP 1.1.1.1) site2.ws (IP 1.1.1.2) site3.ws (IP 1.1.1.3) using the same WP installation.

    Thank you very much!

    Reply
  21. All works fine until this point: “Browse to this site and verify that everything is fine.”

    I can´t browse to the dashboard (www.secondarydomain.primarydomain.com/wp-admin) they found no content.

    any idea?

    thx

    Reply

Comment on How To Run Multiple Sites On WordPress 3.0 On Separate Domains

Your email address will not be published. Required fields are marked *