Installing DotNetNuke 4.8.2 on a Remote Host 

In previous articles on this site I have provided tutorials for installing DotNetNuke to a local machine, however, I typically avoid the topic of installing DotNetNuke to a remote web hosting provider.  I have been asked many times why and the answer is simple; installations to remote hosts are not standardized, depending on the hosting providers environments the steps to install can differ greatly.  However, due to popular demand I have created this tutorial which will provide you the basic overview of how to perform a clean installation of DotNetNuke on a remote web hosting provider.  In the article I will try to point out the most common differences between different hosting providers, I will also be providing specific examples regarding the use of the Plesk control panel which is what my hosting provider (3Essentials) uses.  This article is my third revision updated to add some more clarifying points, be sure to share any feedback in the comments section at the bottom of the article!

First of all prior to starting this tutorial you must make sure that you have an established hosting account, an active domain name pointed to this hosting account, and you must be aware of all login information to your specific provider.  This login information includes but is not limited to FTP, Database, and control panel logins.  Below is a listing of each step that we will follow during this tutorial.

  • Prepare the hosting environment
    • Setup file permissions
    • Configure Database (if not already completed)
    • Validate ASP.NET Version
  • Download and Prepare DNN Files
  • FTP Upload of website
  • Triggering of DNN Installation Process

Preparing the hosting environment

This first portion of the install process is typically the most complicated and is ideally the only section of this article that will vary depending on your hosting provider.  Below I am providing installation instructions assuming the usage of Plesk as the application control panel, and working with 3Essentials as the hosting provider.  The reason I mention this is that with Plesk you must also contact your hosting provider and I know that the following processes work with 3Essentials as they are my provider..

Setup File Permissions

This step of the installation process is the one that is most commonly overlooked, therefore I am putting this as the first item on the agenda.  Due to the nature of DotNetNuke and the manner in which it allows you to dynamically install modules/skins/containers and the like you must ensure that the ASP.NET worker process account (ASPNET in Windows 2000 / NETWORK SERVICE in Windows 2003) has full permissions to the ENTIRE installation directory.  Typically on a hosted environment you are NOT able to configure this using your control panel.  My recommendation is to submit a support request to your hosting provider with text similar to the following.  Please note that in a shared hosting environment you MIGHT have a different user account that represents the ASP.NET Worker Process so I would avoid referencing a specific account name.

I am preparing to install DotNetNuke on my ____________ account. Can you please ensure that the ASP.NET Worker Process has full file permissions to the root of this domain.

The good news is any hosting provider should be able to understand this request and they can quickly make the needed changes.  If you have a file permissions utility via your control panel, ensure that you are able to modify the root file permisisons.  3Essentials has a file permission utility, however, they do not allow customers to modify the permissions to the root folder, therefore I must submit a ticket to have my permissions modified.  If you are unsure, lean towards the side of caution and submit a request to your hosting provider!

Improper configuration during this step of the installation process WILL result in a failed installation and you will have to restart.

Configure Database

DotNetNuke requires a SQL Server database to operate and this is something that must be configured.  Depending on your hosting provider the database and database user account might have already been configured, if not you might need to create the database and user.  The point of this step is to ensure that you have the following informaiton for your environment.

  • Database Server Name (The name/ip of the server where your database resides, never include HTTP in the name)
  • Database Name (The name of the database where you can store information)
  • Database User (The user account that you may use to access the database. NOTE: this account should have DBO permissions)
  • Database Password (The password for the username listed above)

You can obtain the Database Server Name from your hosting provider, most of them provide this information on their support sites. This value might be a fully qualified domain name (db1.3essentials.com) or as an ip address (10.12.12.5) or potentially a few other styles of values depending on their configuration. The remaining pieces of information all relate specifically to YOUR databaase on their server. If you are using Plesk you can obtain all needed information from the "Databases" section of your control panel.

If you are unsure of where to obtain this information contact your hosting provider.

Validate Trust Level (Optional)

This optional step is something that might help you later in your DotNetNuke experience. Some 3rd party modules, especially those that communicate to external sources require full-trust permissions within the ASP.NET application. This is something you might consider asking your hosting provider if they support, if they do I would have them enable it. 3Essentials supports full-trust by default.

Validate ASP.NET Version

This simple step is also one of the most common errors when installing DotNetNuke to a remote site. If you are installing 4.8.2 as this article is guided towards you MUST ensure that your website is configured to use ASP.NET 2.0. If you are using Plesk to manage your domain you can view the ASP.NET version in the settings page for your website, ensure that the version indicates (2.0.50727). Other hosting providers and control panels might provide a user accessible method for changing this or you might have to submit a support ticket, this all depends on the provider.

Once you have completed this step and received confirmation that you have ALL proper data values you can no proceed to the process of downloading and configuring the DotNetNuke installation files.

Downloading and Preparing DotNetNuke Files

To install DotNetNuke on a remote system you must first download the "Install" package of DotNetNuke 4.8.2 to your local machine, you must then UNZIP all files to a location on your computer to store the files before you migrate them to your hosting provider.  So the first step is to download the files and unzip them to a location on your machine.  For the ease of explaination I am going to assume that you unzipped the files to C:\DotNetNuke.

Now that you have your files on your local machine we need to make a few modifications. 

  1. Rename the release.config file to web.config.  This file is located in the root of the extracted files (C:\DotNetNuke\release.config in our example)
  2. Open the web.config file in your favorite editor, or Visual Studio whichever you desire.
  3. Modify the circled sections, this is configuring the connection to the database so substitute your values for "Server", "Database", "uid", and "pwd".  This format of connection string will work for any version of SQL Server.  You may use other valid connection string settings if desired, you may visit http://www.connectionstrings.com for assistance with other formats.  Be sure that when you modify these settings that you change the UNCOMMENTED connection string, as by default two strings are provided, one of which is commented out.
    Connection String Values to Change
  4. Locate a setting called <add name="AutoUpgrade" value="True" />, change the value on this to "False"
  5. Locate a setting called <add name="UseInstallWizard" value="True" />, change the value on this to "False"
  6. Save the modified document

The modifications to AutoUpgrade and UseInstallWizard are completed to ensure that you are the one to trigger the installation and bypasses the wizard since we have already configured the web.config

Now that you have completed these web.configuration changes you have a DNN Installation that is ready to be uploaded to your website.

FTP Site to Hosting Provider

This step of the process is very simple, however, there are certain circumstances with hosting providers that can cause issues.  When using FTP to upload it is VERY important to make sure that ALL files are copied.  Due to potential timeouts and issues with FTP clients I highly recommend copying the files to your hosting location 1 folder at a time.  Copy the admin folder first, then the app_code folder, etc.  This will allow you to not only closely monitor the upload but will also allow you to quickly re-upload files in the case of an error.

Be sure when uploading these files that you are loading them to the proper location on your web host.

Execute the DotNetNuke Installation Process

Now that your files have been uploaded you just need to trigger the DotNetNuke installation process.  You can do this by going to the following url http://www.mysite.com/install/install.aspx (Where mysite.com is your domain name).  This should bring up the DNN install process where it should let you know that it is upgrading DotNetNuke and will provide you status messages.  If you receive a message that says unavailable, please try to visit the link again, be sure when you re-visit the site you must be sure that the path is still http://www.mysite.com/install/install.aspx.  The installation should proceed with NO errors and should then provide a link that tells you to "Click here to access your portal". If you see any error messages be sure to note them before moving on as they will NOT be visible again!  Be 100% sure that you click the link to visit your portal as if this step is skipped it is possible that the portal alias for your site will be incorrectly configured and you will be unable to login to your site. 

You have now successfully installed DotNetNuke!  You should be able to login to your host account with the default password of dnnhost.  Be sure that you login with both the default host and admin accounts to reset the passwords and secure your DNN installation.

I hope this article has helped those looking to install DNN on a remote hosting provider.  If you need assistance please make a post in the forums on this site, if you have a general comment please feel free to leave it below!

Posted by Mitchel on Wednesday, March 26, 2008
 

Comments

Just a point of clarification, you referenced a key "usewizard" and the key is actually "UseInstallWizard".

Also I had a question about renaming the release.config file, is that necessary cause there was a web.config file already in the folder?

By sjeffers on Saturday, March 29, 2008 at 7:59 AM

Stephen,

I have fixed the typo in the tutorial...

It isn't mandatory...but I find that using release.config is best.

By mitchel.sellers@gmail.com on Saturday, March 29, 2008 at 3:31 PM

Hi Mitch,

I am doing a new install on discountasp.net of 4.8.2. Should I choose MS SQL 2000 or 2005 as an add on to use with DNN?

Also they say "We recommend uploading DotNetNuke into a subdirectory. We DO NOT recommend uploading DotNetNuke to your document root directory." But I have always done a root install. Any thoughts on that?

Many thanks!

Will Sugg

By Will Sugg on Monday, May 12, 2008 at 5:18 AM

Will,

If you are just starting I would recommend using 2005, just to make the future easy.

Also, I would NOT install it in a sub folder, it creates too much of a nightmare if it is not... If you host doesn't support/reccomend it, I would look at another host. I use 3Essentials and don't have any problems (Referral link on my homepage).

By mitchel.sellers@gmail.com on Monday, May 12, 2008 at 5:46 AM

Hi Mitch,

My install went great (got all 'success' and then click for portal) but when I do it just kicks me to the /install directory. Also, this article has you changing under express server, should it not be under the "SQL Server 2000/2005"

thanks,

Will

By Will Sugg on Monday, May 12, 2008 at 1:50 PM

Will,

Either one can be used, it is simply the connection string value that is important.

In your case, you will want to check in the portal alias table to see if the portal alias has a / at the end. if it does you will need to modify the record to remove it.

By mitchel.sellers@gmail.com on Monday, May 12, 2008 at 1:59 PM

Hi Mitch,

My site installed successfully, but now I can't log in. I think it has to do with this:

<!-- Ensure validationkey is not set to AutoGenerate,IsolateApps so it correctly supports webfarms -->
<machineKey
validationKey="AutoGenerate,IsolateApps"

I think I uploaded my web.config after installing - did that botch it? Do I need to reinstall or can I get that validation key somewhere?

thanks,

Will

By Will Sugg on Tuesday, May 13, 2008 at 5:41 AM

Will,

Yes, that would cause you some problems. You have two options.

1.) Reinstall DNN
2.) Create a new user via the registration process, then via SQL Server update the passwords for host/admin. I have the scripts for doing this in the blog.

By mitchel.sellers@gmail.com on Tuesday, May 13, 2008 at 5:49 AM

This looks like a procedure for setting up a new DNN site...what about moving an already-created DNN site, with skins, content, all kinds of stuff in it, to a hosting provider??
I've been told that I should request my hoster to set permissions etc., and that the DB should be set up in advance and that the tables have to be ftp'd to to the hoster, etc. etc.
Would you please clarify??

By Tom on Thursday, May 15, 2008 at 9:58 AM

Tom,

That process is much more involved. Please make a post in the forum, or drop me an e-mail at msellers@iowacomputergurus.com and I'll point you in the right direction.

By mitchel.sellers@gmail.com on Thursday, May 15, 2008 at 10:10 AM

Hi Mitch,

Thanks for this very concise guide - the best I've seen for shared hosting.
I am hosted with digiweb and as you recommended mailed their support asking for permissions to be set for the NETWORK SERVICE. They have come back looking for a list of ALL directories needing this permission as they are quite picky on asp.net permissions. Am I right to assume that I need these permissions changed for all folders from root down? If they insist, is there a subset of directories that will be sufficient? Or should I just hold out for full permissions? They confirmed before I signed up that they support dotnetnuke.

Thanks again,

Colum

By Colum on Monday, May 19, 2008 at 3:23 PM

Colum,

In theory a subset might work, but you would seriously limit the functionality of DotNetNuke. If they are not willing to grant full permissions I strongly recommend selecting another hosting provider.

Email me at msellers@iowacomputergurus.com with any questions.

By mitchel.sellers@gmail.com on Monday, May 19, 2008 at 3:49 PM

Hello,
I just completed an install of v4.8.3 at Webhost4Life. Everything looks good and then the site reverts to a Under Construction.html page located in the install folder. Any ideas how to correct this?

By LeAnne on Thursday, May 29, 2008 at 12:33 PM

I just installed DNN and everything is working on the host environment. The deployment is in a Virtual directory under root, and http://localhost/dnn/ works fine (including login). However, when I try to access dnn from another system, even within the lan (192.168.0.2/dnn/, I get an error. Any idea what might be wrong? I can see files that I drop into the dnn directory (eg. test.html)

My web.config points to '(local)' as the host for the database - could that be the problem? I left it that way because the db server is on the same system as iis.

Thanks
Tim

By Tim on Sunday, August 17, 2008 at 8:47 AM

Tim,

You need to add a portal alias for the external address. When logged in a host go to Admin -> Site Settings. Scroll to the bottom and click 'ADD HTTP Alias' Then just put in the URL.

If you need further assistance, please post to the forums.

By mitchel.sellers@gmail.com on Sunday, August 17, 2008 at 8:49 AM

awesome. Thanks for your help!

By tim on Monday, August 18, 2008 at 2:51 AM

Comments from the following blog entry: Installing DotNetNuke 4.8.2 on a Remote Host , located at: http://www.dotnetkicks.com/aspnet/Installing_DotNetNuke_4_8_2_on_a_Remote_Host

By DotNetKicks.com on Monday, September 08, 2008 at 2:02 AM

Hi Mitchel,

I have two questions if you don't mind?
1. I have downloaded the "install" package and followed your instructions although i notice it's very similar to the existing DNN install folder on the site I have been working on. Would i not just reference that install.aspx? I can't see why I'd require a separate Install package to my DNN site correct?
2. Do you have any ideas as to why I might receive this error when installing?
Runtime Error
Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed remotely (for security reasons). It could, however, be viewed by browsers running on the local server machine.

Many thanks for your help - I'm hoping I can get DNN to run at some stage! cheers

By Brad on Wednesday, September 17, 2008 at 1:07 AM

The other error I seem to receive is:
Configuration Error
Parser Error Message: It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level. This error can be caused by a virtual directory not being configured as an application in IIS.

By Brad on Wednesday, September 17, 2008 at 1:26 AM

Brad,

Can I get you to post this to the forum please?

By mitchel.sellers@gmail.com on Wednesday, September 17, 2008 at 3:51 AM

I'm trying to install DNN 4.8.2 on my plesk panel. When I try to install the application I get a messag saying "The type of databases used on this server is not suitable for this application". I installed sql server 2005 Express edition - but keep getting the same message. Is the problem with the Express Edition or something else?

By Abdel-Rahman on Tuesday, October 07, 2008 at 12:19 AM

Abdel,

I am not sure about what would cause error in the plesk panel, as I do not use it for installation, i would check with your hosting provider if you cannot setup the database.

If you have futher questions, please post to the forums

By mitchel.sellers@gmail.com on Tuesday, October 07, 2008 at 5:01 AM

Thanks Mitch - but does the SQL 2005 Express edition work with the DNN 4.8.2 or not?

By Abdel-Rahman on Tuesday, October 07, 2008 at 7:34 AM

Express works just fine!

By mitchel.sellers@gmail.com on Tuesday, October 07, 2008 at 7:42 AM

Great info!

I developed all locally. Now I need to upload to my host.. any tutorials on migrating all of that?

thanks,
Seed

By Seed on Monday, November 03, 2008 at 11:16 AM

I am trying to install DNN 4.9 on a remote host. All fine till I want to add text. When I edit text in the text/html module I get message 'Not Found, the requested document was not found on this server'. Any sugestions how I can solve this issue? Thanks

By Jan on Saturday, January 24, 2009 at 9:11 AM

Please post specific questions to the forums for assistance.

By mitchel.sellers@gmail.com on Saturday, January 24, 2009 at 9:49 AM
Click here to post a comment

Disclaimer