DNN is a free open source .NET content management system (CMS). Like any CMS, users can easily manage site content and users, as well as develop and install custom themes and extensions (similar to WordPress “plugins”). The system requirements for DNN are as follows:

Operating Systems

  • Windows 8, 8.1, 10
  • Windows Server 2008 R2, 2012 R2

.NET Framework

  • 4.5.1+

Web Server

  • Microsoft IIS 7.5, 8.0, 8.5, 10

Database Server

  • Microsoft SQL Server 2008 R2, 2008 Express R2, 2012, 2012 Express, 2014, 2014 Express, 2016 (for DNN 8.0.4+)
  • Microsoft Azure SQL Database

In this tutorial, I am using Windows 10, Microsoft IIS 10, Microsoft SQL Server 2014 Express and DNN Platform 9, and I am assuming you already have your database server set up. If your system is different (e.g. Microsoft Azure SQL Database), the installation process below is still the same.

1. Download the Install package

Download the Install.zip package for the latest release from github.

You can also download the latest install package directly from DNN’s website – be sure to scroll down and select the Install Package download option.

2. Extract the files

Go to your Downloads folder and find the zip file. Right click the zip file, select Properties, then check Unblock and click Apply. This marks the file as trusted and ensures all the content is extracted and accessible.

Next, create the directory for the website. I am using D:\Tutorials\DnnTutorial. Now copy and paste all the extracted files and folders from the zip file into your new website directory.

3. Configure IIS

To install IIS (or to confirm you have the appropriate settings configured), select Turn Windows Features on/off in the Control Panel, and turn on the following options below Internet Information Services:

  • Web Management Tools
    • IIS 6 Management Compatibility
      • IIS 6 Management Console
      • IIS Metabase and IIS 6 configuration compatibility
    • IIS Management Console
  • World Wide Web Services
    • Application Development Features
      • .NET Extensibility 3.5
      • .NET Extensibility 4.6
      • ASP.NET 3.5
      • ASP.NET 4.6
      • ISAPI Extensions
      • ISAPI Filters
      • WebSocket Protocol
    • Common HTTP Features
      • Default Content
      • Static Content
  • Health and Diagnostics
    • Custom Logging
  • Performance Features
    • Dynamic Content Compression
    • Static Content Compression
  • Security
    • Basic Authentication
    • Request Filtering
    • Windows Authentication

Once IIS is configured, you need to create the site. Open IIS, right click Sites and select Add Website.

Use dnndev.me for the Site and Host names. Enter or select the website directory you created in step 2 for the Physical Path. Click OK.

4. Grant File Permissions

You may or may not have noticed that an Application Pool was automatically created with the same name as the website we just created. We need to grant this Application Pool access to our website directory.

In File Explorer go to your website directory, right click the folder, select Properties, select the Security tab, then click Edit.

Click Add

Now we need to enter the name of the Application Pool – in our case, we need to enter iis apppool\dnndev.me. Please note that there are three p’s in that name.

Click Check Name to ensure it resolves to our Application Pool dnndev.me, then click OK. (If you are on a domain, you may need to change the Location field from the domain to your computer).

After that, select dnndev.me from the Groups and Users list, check Modify permissions, and click Apply. Close out of the remaining windows.

5. Setup the Database

Now we are going to create a new database and login credentials. Open up your database server, right click on Databases and select New Database. Enter your Database Name and Owner, then click OK. You will need the Database Name later in this step and step 6.

After creating the database, expand Security, right click on Logins and select New Login. On the General page, enter a new Login Name (I like to use straightforward login names so it is clear which system or application is using it), select SQL Authentication, and enter a Password. Please note, you will need to remember the Login Name and Password for step 6.

Then select the User Mapping page on the left – check the name of the database we just created and set the Default Schema to dbo, then check db_owner and public options for Database role memberships. Click OK.

6. Run DNN Installation Wizard

We’re almost done! Now open a browser and go to your site (http://dnndev.me). You should be redirected automatically to the Installation Wizard.

Enter the desired settings in the Administrative and Website Information sections. In the Database Information section, use the following values:

  • Database Setup: Custom
  • Database Type: SQL Server/SQL Server Express Database
  • Server Name: .\SQLExpress (if you are using a professional version of SQL Server or Azure, enter the appropriate server name instead)
  • Database Name: DnnTutorial (the Database Name created in step 5)
  • Security: User Defined
  • Database Username: web_dnntutorial (The Login name created in step 5)
  • Database Password: (The login password created in step 5)
  • Run Database As: Database Owner (make sure this is checked)

Now click Continue to run the Installation Wizard.

Once the Installation Wizard is complete, click Visit Website – you should be redirected and automatically logged in (using the admin credentials you specified earlier in step 6).