So I’m a newbie when it comes to Windows Home Server but I’m quite seasoned when it comes to DotNetNuke, IIS, and that entire stack. I wanted to cover off a the topic of installing DotNetNuke onto your Windows Home Server.
Windows Home Server is essentially Small Business Server, just tweaked for network attached storage (NAS). There are many other NAS solutions available, but I find this one superiour (at least for me) is the fact that it is built on top of the Microsoft solution. I know ASP.NET, I know IIS, I know .NET, etc.. When I first heard of this product I was pleasantly surprised.
Here is a shot of my Acer Aspire Home Server H340 physical machine.
Enough about me, on with the install!
Throughout this installation I will not be using the WHS Console. I prefer simple RDP (remote desktop). If you want the best RDP client, check out my Terminals project on CodePlex. Once you have RDP access to your WHS installation, continue with this article. All of the subsequent steps will be performed directly on the WHS machine, unless otherwise specified.
Microsoft has genrously provided us with a Tool which automates this entire process for us, its called the Microsoft Web Platform Installer (WPI).
The Microsoft Web Platform Installer 2.0 (Web PI) is a free tool that makes getting the latest components of the Microsoft Web Platform, including Internet Information Services (IIS), SQL Server Express, .NET Framework and Visual Web Developer easy. The Web PI also makes it easy to install and run the most popular free web applications for blogging, content management and more with the built-in Windows Web Application Gallery.
Download and start the installation process now.
Now, since I’m running a pretty clean WHS install it is also complaining that it requires Visual C++ 2008 SP1 prior to my install, specifically for Sql Server Express.
Lets do that now. After a quick Bing search, here is the download. Its only 4MB and took all of 5 seconds to install, one wonders why Microsoft couldn't have just included it with the WPI tool – or at least link out to it.
Once that is complete you will need to restart the installation process; if you have the WPI open, exit it now. To re-launch the tool, notice the shortcut in your Start->Programs menu.
Take time to browse all of the tools which WPI brings to the table. Notice that under the “Web Applications” tab on the left, we see “DotNetNuke Community Edition” as one of the options. Do NOT check that item right now. Lets just focus on getting Sql Server Express installed prior to getting DNN installed.
Next under the “Web Platform” tab, you will see “Database” on the right. Choose the “Customize” link in that section.
I chose the Sql Server Express 2008 with Service Pack 1, the Management Studio Express and the Management Objects – maybe I’m greedy, but having the additional tools available will only help later with development and/or troubleshooting.
Lets go ahead and hit install. You are now prompted for confirmation of the installation. Review this list, make sure it is want you agree to, and hit the “I Accept” button.
The first action it takes is to install Sql Server Express. I left it on the default “Mixed Mode” and punched in my super secret password.
Let the Sql Server Express product install, along with the other various bits it will proceed to install.
Note: You may want to pause any downloads you have (Torrent/NNTP/what have you). Having a slow connection during this process will ultimately delay you getting online in short order. WPI does not ship with all of the independent applications. It needs to download them on the fly.
Sit back, go get a coffee, relax for a bit. On my machine it took about 45minutes to get past this step. Even when the installation seems to just sit there, please be patient. My install sat at the “Finished Downloading”/”Installing” screen for a long long time.
While your downloading, take time to explore the WPI website. I was interested in how often it is updated, specifically with DNN. Should I use WPI to install DNN, or should I do it manually? Here is the DNN specific page which, at the time of writing this, lists 5.1.4 Community Edition as the build. Checking out the DNN CodePlex downloads page, that is indeed the current recommended release. Quite pleasing to see that Microsoft is actually maintaining this resource for us.
If you have any issues with this installer at this point, you might want to actually try hitting cancel, then re-launch WPI, and validate which components did and did not get installed.
Ok, so we now have Sql Server Express installed. Lets verify that it is running. If you right click on My Computer, and choose “Manage”, then expand “Services and Applications” you will see a node for “Services” Click that node. Scroll down until you find the “Sql Server (SQLEXPRESS) service, take notice if its status (should be Started), and Startup Type (should be Automatic). Notice in the screen shot below, it is the item just under the selected service.
So now that we have Sql Server Express properly installed, lets shift our focus to DotNetNuke. If you closed WPI, launch it.
Navigate back to the “Web Applications” tab, and check “DotNetNuke Community Edition”, and then hit install.
So during the DotNetNuke installation you will be prompted for all the basics which is needed to configure IIS and DNN so they play together, here are the values which I used:
Web Site: “Default Web Site”
Web Site Name: dnn
Physical Path: c:\inetpub\
IP Address: All Unassigned
Host Name:myservername.homeserver.com (do NOT put http:// prefix here)
Now, the above setup is pretty strange and not exactly 100% clear as to what is happening in IIS and on the File System. You may need to crack open IIS Management (Right Click My Computer, Manage, Services and Applications node,
Step 2 of 2 includes pointing the DNN Installation to your fresh Sql Server Express installation. Take a second to review the page, you will notice it needs specific login details for the administrative and user accounts. Lets jump into the Sql Server Management Studio to setup those accounts. (Start, All Programs, Microsoft Sql Server 2008, Sql Server Management Studio).
As you launch the application for the first time, it will setup help and other stuff, let that happen. Once it is complete, you will be prompted to login to the default instance of Sql Express, all you should need to do is hit Connect, do not change any values here.
You should now see a tree on the left, expand the Security node, and then right click Logins, New User. Here is what I used:
Sql Server authentication
Password: another super secret password
I unchecked the password policy rules as well. I don't want to be hassled.
Under Server Roles, give the user “sysadmin”. (Both public and sysadmin should be checked).
Hit OK and feel free to exit the Sql Management Studio, and lets get back to Step 2 of 2.
Here is what I used:
Choose Your Database: Sql Server
Create a new or use an existing database:Create new database
Password:that same super secret password
Database User Name: dnnuser
Database Password/Confirm: yet another super secret password
Database Server: leave it alone (.\SQLExpress). Thats the default instance of Sql Server Express
Database Name: leave it alone (DotNetNuke)
Now you may hit Continue and let the installer work its magic.
Finally (and hopefully) you should see…
Finish, and exit the WPI tool.
Browsing our DNN site for the first time is critical to get it setup right. Open your web browser and point it to your public facing url. http://someserver.homeserver.com/dnn
Please be patient. The first time a ASP.NET application is hit, it needs to do a bunch of startup tasks, this will take some time. Avoid hitting refresh until the page fully loads.
With any luck you will see the DNN Install wizard:
Now lets go through the “Custom” install. Be sure to actually change the option to “Custom” and then hit next.
First step is to check the file security permissions, this should just work. Click the “Test Permissions” button, and hopefully you will see green! If you do NOT see green, and there is an error simply read the information near the top of the page to resolve the issue.
Once permissions gives you all green, hit Next.
So you are now prompted with another screen asking you for the database credentials. This is because DotNetNuke is typically installed WITHOUT the WPI tool. Use the same details as you used previously. Always “Test Database Connection” prior to proceeding.
Finally it goes ahead and performs the actual database installation. The majority of this work is done via a bunch of Sql Scripts being executed against the database. Let it take its course and complete.
Now its time to setup the default Host and Admin credentials. If you are unfamiliar with DotNetNuke, essentially the HOST account is global to all portals (web sites). The ADMIN account i limited to the single portal which it is available on.
If you want to set your portal up to use GMail, use..
Enable SSL: Checked
Password: your password
Test the SMTP Settings, and if you get a green light, hit next.
You now are presented with a plethora of modules to install. Here is my recommended list:
Documents - easy way to share documents with friends and family
Links - nice way to setup additional navigation for your site
Media – easily expose media content
Map – Hey, why not allow friends and family to always be able to get your home address?
Blog – Use it, create a home blog!
IFrame – Handy for linking in other stuff, like the standard WHS Console
Survey – Survey your friends and family!
Hit Next, once you have made your selection.
At this point your browser will sit and spin for a little while. Let it work itself out; do NOT hit refresh, do NOT load up a new browser and hit the site. It is going through the process of installing all of the modules you have chosen. The more modules you picked, the longer it will take.
Installing Skins and Containers – Defaults are fine, just hit next.
Language Packs and Languages – this revision did not include any, so just hit next.
Authentication Systems – Since your using WHS, you most likely do NOT use a Domain Controller (Active Directory). Keep the defaults and lets move on.
Install Providers – Keep the defaults, and hit next.
At this point your probably thinking, holy crap there are so many steps to install DotNetNuke. So many things to configure, and so many extensibility points. This is a massive advantage DotNetNuke has over all of its competitors. It has had such a long and healthy life in the community that there are literally thousands of developers contributing to the project.
We now are presented with the initial Portal Setup. Each portal needs an administrator account, so plugin your details for this. Typically, if you are only going to use one portal, I usually avoid using the Admin account and actually forget the password. I will just use the Host account. With that said, if you plan on delegating any web admin to anyone else, this would be a great account to do that with.
The most important piece here is the Portal Title. For consistency I would probably give it the same name as the actual homeserver.com domain.
For example, if your homeserver URL is:
I would go with
Robs DNN Home Server
Template, well there is only one option. Skip it and hit next – oh, and play the waiting game once again.
Congratulations, your finished!
Based on a tweet from a colleague I decided to keep track of which Windows Home Server Add-Ins I installed, any issues and general comments/feedback with each.
The two primary websites for Add-Ins that I could easily find are:
Home Server Plus
Microsoft - Most popular Windows Home Server Add-ins
I base my comments on the follow criteria:
1. After a quick review of the purpose of the add-in I still think it would be of use
2. It has to work
3. It has to not kill the CPU or any other resource on the machine
Here is the list (keepers at the top, losers at the bottom):
Purpose: It allows you access to items like your Control Panel, Printers and Faxes, Admin Tools, Command line, Network Places, etc..
Bottom Line: Its a great add-in when you dont want to RDP into your machine directly.
Installed: YES. And its going to stay there.
Purpose: "It allows for simple remote management of your Home Server while on the go"
Bottom Line: Probably the best Add-In so far, with lots of room to grow.
Installed: YES, including the Windows Mobile Client on my HTC Touch Pro.
Purpose: "...that allows you to place your home server in sleep or hibernation mode at scheduled times."
Bottom Line: Definitely can see a use for this, especially for vacations, or even night/weekends.
Installed: YES - It actually came preinstalled on my device. I'll leave it.
Purpose: WHS Customizer gives you control over your home server's remote webpage.
Bottom Line: This one has some potential. Right now it only allows you to change the default image. The tool to import an image doesn't feel right. I attempted to import an image which it wouldn't let me resize, just crop at a weird size. I then used MSPaint to get it into the correct dimensions which still failed miserably. I think they need to add some sort of description on the perfect image to use.
Purpose: It can be used to shut down and reboot machines in your home network from within the console.
Bottom Line: This looks quite useful, especially the Wake On Lan features. You need to install their system tray application for each client, for communication. This part I don't like.
Installed: YES. I will try it for now…
Purpose: "This add-in is designed for users who need more detail about their server's storage status than what the standard Windows Home Server Storage interface provides."
Bottom Line: I actually like the 3D representation of the disk usage. Just eye candy?
Purpose: “The Router Control add-in for Windows Home Server enables the user to get more control over his/her UPnP internet gateway (e.g. see and modify dynamic port forwarding).”
Bottom Line: I installed this one with the hope that it would work with my router. I have one of those linksys WRT54G devices (old, yes), which runs Tomato. And it seems that that add-in and Tomato just wont play well with each other.
Installed: YES, but I will uninstall until Router Control supports Tomato.
Purpose: My Movies provides automated disc copying of cd's and movies from attached USB drives...
Bottom Line: I will just use RDP for this. I dont find it of much use (as an "Expert" user)
Purpose: Allows admin's to monitor remote access attempts to their Windows Home Server
Bottom Line: I have never really been a fan of Intrusion Detection Systems (IDS), nor would I know what to really do with the fact that some hax0r kid from some random IP address was trying to get at my box. Skipped.
Purpose: Antivirus Solution
Bottom Line: I have my own AV solution in place, and I wouldn't use avast! either way (past bad experience). NOTE: My WHS install came pre-installed with MacAfee, which I immediately uninstalled. MacAfee and I have had a long and not so friendly past with each other that I would rather not get into right now...
Purpose: "...elevates system performance, debugging fragmentation-based problems as they occur..."
Bottom Line: Based on the screen shot and description it looks actually extremely useful, that is probably why it costs $99. I had to skip it due to the lack of funds in my piggy bank.
Purpose: See comments above regarding avast!
Bottom Line: See comments above regarding avast!
Purpose: "...provides real-time, automatic, and continuous synchronization, backup and sharing for your most important digital files via local or online storage."
Bottom Line: I found this Add-In was mostly gear towards KeepVaults sales. At first glance they provide the online storage and this Add-In is geared towards pushing your data up onto their server. Its hard for me to justify 40GB @ $48 per year when I just spent so much money on WHS.
Purpose: "mControl is software for your digital home. From your Media Center PC..."
Bottom Line: At first glance it appears that someone has did the integration with WHS and Home Automation (like X10 Devices). This rocks. I put this one in the "Install Later" bin because of the really high cost. ($200+ ??)
Purpose: Disk defragmentation...
Bottom Line: Until someone can recommend that this defrag is better than the one provided by the OS, skip!
Purpose: "...integrates your Microsoft Media Center computers with your WHS..."
Bottom Line: I personally use XBMC and not WMC. Skip!
Purpose: "WebGuide for WHS lets you access your home entertainment on the go."
Bottom Line: I have little need to stream media remotely. My WHS is strictly for storage and streaming via SMB to my LAN.
Purpose: Adds uTorrent management to the WHS Console.
Bottom Line: I don't use the Torrent network to download files, not to mention the fact that I couldn't even find the installer.
Purpose: "...shows you which files have been duplicated to a second hard drive."
Bottom Line: I'm not too sure how often I would actually check up on file duplication, for some reason I just want to trust and rely on the underlying infrastructure to just work.
Purpose: Adds UPS monitoring to WHS.
Bottom Line: I added this to my "Review Later" list