Migration of Existing Site to 3Essentials 

Recently there have been numerous discussions on the DotNetNuke.com Forums regarding hosting providers and who one should go with and who they should switch to because they are unhappy with their current provider. During all of these discussions I have always recommended the company that I use for hosting 3Essentials. Since making this recommendation I have been receiving numerous e-mails regarding the process to actually migrate a live site over to 3Essentials so I thought I would write a short blog article that explains the basics of moving a website over to 3Essentials, in actuality these instructions SHOULD work for most providers, however ther might be some differences.

The Setup

First you must get your plan setup with 3Essentials so that you have all proper elements available to configure and move your website. Once you have selected your hosting plan and provided them with payment they will send your your needed login information for Plesk and the FTP location.

Before we start the migration process you will want to setup a database instance for your application. You can use the following steps to create this via their website, be sure to remember the database name, username, and password as you will need this information later.

  1. Login to Plesk Control Panel
  2. Select your domain name from the list
  3. Select the "Databases" option
  4. Select the "Add" option
  5. Supply your desired database name, username and password then save the changes

Now that we have this completed we will want to make a few other settings changes to make sure that our site is completely configured. First under the site settings ensure that the ASP.NET is enabled and that the version selection is set to 2.0.50727 (1.1 if on DNN 3.x). Once you have verified this the last thing to do is to submit a support request to 3Essentials. In this support request we will ask for them to confirm the permissions for the root directory. Please follow the below steps to submit this request.

  1. Visit their help site at help.3essentials.com
  2. Click on "Submit a Ticket"
  3. Select "Support" for the group, then click "Next"
  4. Select "High" for the priority
  5. Enter your domain name in the box provided
  6. Enter "ASP.NET Modify Permissions" as the subject
  7. Enter "Please add MODIFY permissions to the IUSR/IWPD users to the ROOT directory for this domain" as the body of the message  (NOTE: if not installing to the root they only need to change permissions on the actual DNN folder)
  8. Click "Send" to submit the message

Once they have confirmed this setting you are now ready to start the migration process!

Preparing the Existing Site

Now that you have your new environment all ready to go it is now time to get the existing environment ready for migration. Typically you will want to notify your users of the move as when you start the actual move process changes to the current site will not transition.

From your current hosting provider you need to obtain a backup of the SQL Server database in the form of a .bak file. Once you have this you will need to submit another request to 3Essentials to have this database restored to the new location. Instructions for the ticket submission are below.

  1. Visit their help site at help.3essentials.com
  2. Click on "Submit a Ticket"
  3. Select "Support" for the group, then click "Next"
  4. Select "High" for the priority
  5. Enter your domain name in the box provided
  6. Enter "Restore Database" as the subject
  7. Enter "Please restored this database file to my existing database (Database name, username, password)." as the body, providing the actual values for the database you created above
  8. In the attachments section you will want to attach your database to the ticket
  9. Click "Send" to submit the message

Once they have confirmed that the database has been restored then you can proceed to the final migration step which is to download ALL website contents from your existing server. When you do this you must be sure to grab all files, be careful of potential FTP download issues. Once you have the files downloaded to your computer you will need to then modify the database configuration in your web.config.

To perform these changes you will need to replace both connection strings with the new information for 3Essentials which include the database name, username, and password as well as their database server name. They will provide you the database server information.

Load Files and Make the Change

Now that you have modified the files on your local machine you will need to simply FTP them to 3Essentials and you will be set to go. When you connect to the 3Essentials FTP servers you will need to go to the httpdocs folder and then upload your site to that folder. Even though via the FTP it is a sub-folder it is actually the ROOT directory for the website. Be very careful when uploading to ensure that all files do successfully transfer.

You may now test your DNN site on 3Essentials before making the DNS change by modifying your hosts file on your local machine to point to the temporary URL.  Luckily 3Essentials has provided a document on how to make this change.  http://knowledge.3essentials.com/index.asp?menu=a1_2&go=knowledge&action=kw.  I have also been informed by 3Essentials that if you have any questions regarding what this hosts entry should be that you can simply submit a support ticket and they will gladly confirm the proper setting. 

Once you have the files up on the server and you have validated that the site is ready to go you can now make the DNS change to move your existing domain over to your new hosting plan. Please remember that DNS changes can take up to 72 hours to complete propagation across the world so some users might still get to your old site after you make the changes.

If anyone has questions/comments/concers please let me know!

Updated on 8/1/2007 with additional information from 3Essentials

Posted by Mitchel on Friday, July 27, 2007
 

Comments

Great write-up, Mitchel; thanks!

You can, in fact, test your site while waiting for the DNS replication. I was given a temp URL:

http://webxx.3essentials.com/$sitepreview/yourURLgoeshere.COM

Worked like a champ.

By Terp on Saturday, July 28, 2007 at 6:12 PM

Terp,

That is great to know, I was not given a test address like that. Great info!

By mitchel.sellers@gmail.com on Sunday, July 29, 2007 at 5:12 PM

The "site preview" function available at http://webxx.3essentials.com/$sitepreview/yourURLgoeshere.COM does not typically work properly with a DNN site, hence the instructions Mitchel referenced about using a hosts file entry. A DNN installation will match the URL to a portal instance within your DNN installation... i.e., you don't have a portal inside your DNN installation named webXX.3essentials.com. Instead, you have one named yourdomain.com. Using the "site preview" url may load your main page, but navigation won't function properly. Using the hosts file entry means the URL you use is actually www.youdomain.com, hence it properly matches to the portal instance within your DNN installation, and all functionality will work just like it does when you cutover DNS... this allows you to fully test your site before making the cutover, to ensure you find any "gotchas".

By 3Essentials Support on Thursday, August 02, 2007 at 3:36 AM

Do you have a referral link? I recently signed up and it's because of your endorsement.

By Erik on Tuesday, September 25, 2007 at 4:16 AM

Yes I do http://www.3essentials.com/?3eref=13422

By mitchel.sellers@gmail.com on Tuesday, September 25, 2007 at 4:38 AM

Thanks. The setup was a nightmare. Apparently you can't have multiple portals off a single installation and keep distinct email addresses per domain. Each portal has to get a seperate installation. I had them clone my site a couple times to work around this issue.

Did you have any problems with some modules not working after your transition? My FAQ, UDT and Media modules all give me an error about sql not allowing remote connections viw named pipes. The text/html and links module work fine, though.

By Erik on Thursday, September 27, 2007 at 7:04 AM

Erik,

Sorry to hear that your transfer was not successful. Yes the e-mail limitation is a bit complicated with 3Essentials and domain aliases, however, I have found that it is a somewhat common item. THere are ways around it such as having a different provider handle the e-mail for the domain.

As for your modules, from the modules you list and the issues you are explaining, I would be sure that BOTH connection strings were changed in the migration, it sounds like your old connection string is being used in the "appSettings" section of the config file.

By mitchel.sellers@gmail.com on Thursday, September 27, 2007 at 1:35 PM

Mitchel, Thanks for your excellent directions! When modifying the web.config, does the machinekey stay the same as it was on the old host?

By whetstone on Wednesday, March 05, 2008 at 5:37 AM

Mark,

You MUST keep the same machine keys, if you do not users will not be able to login to the site.

By mitchel.sellers@gmail.com on Wednesday, March 05, 2008 at 7:27 AM
Click here to post a comment

Donate

Show your appreciation for the content/modules made available by MitchelSellers.com by making a donation. Donations are used to assist with dedicating time to creating free content.