Installing DotNetNuke can be somewhat difficult at times, therefore I am writing this article to give you a full step by step guide to installing DotNetNuke on a Windows XP Pro system. The instructions are similar for Windows 2000 and XP Home but might vary slightly, I have tried to note as many differences as possible. Windows Vista installation is similar but requires a few different steps relating to IIS. This guide is my third revision and includes additional steps and information based
on feedback from previous users.
Prior to following this instruction guide please ensure that you have downloaded the "install" version of DotNetNuke 4.6.0 from http://www.dotnetnuke.com. You can save the zip file to your desktop for the time being. You will also need to have SQL Server Express 2005 installed, (Other versions work, but these instructions might not match 100% on other versions). Lastly you must be logged in to your machine with administrative permissions.
The setup will be broken into the following 4 sections; pre-requisites/disclaimer,
creating the needed SQL Serveer database and user account, unzipping DNN and configuring the web.config file, and finally setup of the virtual directory and starting DotNetNuke.
Pre-Requisities / Disclaimer
Before we start with the tutorial I would like to start by explaining what will
be covered and what must be configured PRIOR to using this guide. This guide
assumes that you have a SQL Server 2005 Express Database instance running on your
machine that has been configured for mixed-mode authentication and to allow external
connections. This guide also assumes that you have IIS and ASP.NET 2.0 installed
correctly. The last assumption that is made with this tutorial is that you
have "simple file sharing" turned off for your portal.
If you have any concerns regarding these items, please post a question in my support
forum as these items all must exist and be configured properly as a baseline before
this guide can walk you through the DNN installation.
Creating SQL Server Database
- Start SQL Server Management Studio Express (SSMSE), (if you don't have this please download SSMS from Microsoft.)
- Once SSMSE has opened, please note the "Server Name" of the server that you are connecting to, this is the full text of the information in that field.
- Once you have connected and opened the utility you will want to expand the node for your server name as located in step 2
- Right Click on the "Databases" node and select "Create New Database"
- Specify a name for your database, I will use DotNetNuke46 for this example, then click create
- Now expand the "Security" node, then right click on "Logins" and select add
- Provide the information for the dnn account, be sure to select "SQL Server Authentication" and remember the password. (If SQL Server Authentication is not available see this to enable mixed mode on your server)
- Now select "User Mappings" and check the box next to your newly created database at the top, then select the "dbowner" role from the listing at the bottom, this maps the account to have full access to your database.
- Click "Create" to have your user account created. Once this is completed you are now done with the databse setup. Please remember the database server name from step two and the username and password used to create the SQL Server account as we will be using this in the next section
Unzipping and Configuring DotNetNuke
All files from the DotNetNuke install zip must be extracted to a common folder, typically this folder is created as a sub directory of C:\inetpub\wwwroot. The instructions below will be based on installation to this location, if you desire to install DotNetNuke at a different location simply substitute your folder path anytime it is referenced in the below instructions.
- Using windows explorer navigate to c:\inetpub\wwwroot, then right click and select "New" -> "Folder" and create a folder called "DotNetNuke46".
This folder will become the install directory for DotNetNuke
- Right click on your newly created file and select "Sharing and Security"
- Switch to the security tab, if you do not see the "Security" tab, you will need to disable the "Use Simple File Sharing" option in your Folder View Options.
- Click "Add.."
- In the textbox type ASPNET if on Windows 2000/XP or NETWORKSERVICE if on Windows 2K3/Vista, then press ok
- Under permissions for this account check the box for full control, then press "Ok" to save the changes
- Open the DotNetNuke 4.6.0 Install Zip package
- Select "Extract All Files/Folders"
- For the extraction location select the folder you created in step 1
- Once all files have been extracted you need to edit the "Web.config" file located in the root of the DotNetNuke folder
- Modify the circled sections of the web config, you will need to set this up to connect to your database, so substitute your values for "Server", "Database", "uid", and "pwd". This format of connection string will work for both SQL 2000 and SQL Express. You may use other valid connection string settings, you may visit http://www.connectionstrings.com for assistance with other formats NOTE: be sure to use your proper values for the
connection string, this image is for example purposes only and is from an older
version of this guide, thus the different database name.
- Also inside the web.config look for a setting called <add name="AutoUpgrade" value="True" />, change the value on this to "False"
- Lastly inside the web.config look for a setting called <add name="UseWizard" value="True" />, change the value on this to "False"
- Save the modified document
The above finishes the actual configuration of the DotNetNuke file system first we created the needed directory, then we assigned the proper file permissions, then we configured the web.config file to not only connect to the database but to also do some preventative settings changes to secure the site.
Setup Virtual Directory and Start DotNetNuke
Now that we have the database and file system setup we will proceed to the final step of setup, configuring IIS to host your website.
- Open the IIS Snap-In tool, this can be found via "Start" -> "Settings" -> "Control Panel" -> "Administrative Tools" -> "Internet Information Services"
- Expand the root notes until you can expand the "Default Web Site" node
- You should see your application folder listed under the "Default Web Site", right click on the folder and select "Properties"
- On the first tab, click the "Create" button next to the application name, you should then see DotNetNuke46 listed
- Now, switch to the "Documents" tab. Remove all current entries and add "Default.aspx" to the listing. Your window should look like the following when complete.
- Now, switch to the "Dierectory Security" tab
- Click "Edit" in the "Anonymous access and authentication control"
- Ensure that a checkmark is included in the "Anonymous Access" box at the top of the screen then click "Ok" to exit
- Now switch to the "ASP.NET" tab and ensure that "2.0.50727" is selected for the ASP.NET version
- Click "Ok" to save your changes and complete the IIS setup
This now completes the IIS setup. NOTE: If you are using Windows Vista the above steps are much different, please view my video tutorial for a step by step walk-through of the Vista IIS setup. I will work to get a text based tutorial for Vista up within the next week!
Now that we have everything configured it is time to start the installation process, you can do this by opening Internet Explorer and navigating to "http://localhost/dotnetnuke46/install/install.aspx". This should trigger the DNN installation process, if you are directed towards the
"UnderConstruction.htm" page simply try navigating to the install page a second
time, I have noticed a sporadic bug in DNN that causes this to occur in special
circumstances. Once the installation is completed you should see a link that says "Click here to access your portal", once you click this link you will
have your new site up and going.
This walks you through the entire setup process to get a local copy of DotNetNuke working with SQL Server 2005 Express, for installation on a hosting provider please
see my other tutorials.
If you have any comments please leave them below, if you have any trouble and need assistance please utilize my forum to request assistance!