Ok. I have finally managed to write down the steps needed in order to install a local copy of the very useful DotNetNuke engine and apply a skin to it. For those out there wondering what is so special about the DotNetNuke engine in site development I briefly state the following: As a web developper, imagine that somebody asks you to implement a site that advertizes his shoe selling store. You go ahead and implement a static site and you get your money. Suppose that this costs you a week of your time and you are mainly concerned with graphic deisgn and layout issues.
Your client after a month asks for a way to dynamically add/remove products. You go ahead and implement a small database and user interface in ASP.NET and install it also. Then your client needs a forum. Then your client needs a newsletter. Well you start getting the picture. He/She needs and you spend time implementing. The money you charge for each addon does not compare the time you spend implenenting.
Well with DotNetNuke you have a better approach:
At the initial client's request, you deploy the dotnetnuke engine (he doesn't need to know what dotnetnuke is ;) ) and spent a week (as before) in order to implement a skin for DotNetNuke that provides the look and feel your client prefers. Up to this point to the eyes of the client it is the same. When your client asks for a product update mechanism you do not need to implement it (reinvent the wheel in a sense) but you just add the corresponding dotnetnuke module and apply some skinning to it (great reduction in implementation time). The same when he/she needs a forum, newsletter etc. If he/she needs something very special you just implement it as a module for dotnetnuke and yoou can provide it free or with a cost to the dotnetnuke community.
So dotnetnuke can make your life easier as any other CMS. If I managed to convince you here is a small tutorial on where to start:
- Download DotNetNuke_Install package (you need to register first).
- Create a folder in your inetpub\wwwroot\ folder named DNNDemo.
- Extract all the contents of the zip file in the folder.
- Give to the NETWORK SERVICE (Vista)/ASPNET(XP) user full permissions in the DNNDemo folder.
- Open IIS Manger (Vista) and select "Convert to Application".
- Open your favorite browser and write the address: http://127.0.0.1/DNNDEMO/.
- You should be presented with the installation wizard. If not check your permissions or your settings in IIS. Everything else is ok, trust me.
- In the wizard select Typical(Next).
- The select "Test Permissions". Sometimes the Delete file permission fails even if everything is fine so try it a number of times. Worry if the problem persists even after 3 tests. Finally hit Next.
- At this point you need to create a databse in SQL Server 2005 (the approach for MSSQL Express is similar). Open SQL Server management studio and create a new DNNDemo database.
- Under Security/Logins create a new login, name it "dnn_user", select SQL Server Authentication and only check "Enforce Password Policy".
- Net go to dnndemo/security/users and add a new user. Set "dnn_user" to be the login name and the user name and in the Database Role Membership select db_owner.
- Return to the DotNetNuke wizard and provide the appropriate sb information (it is straightforward). Make sure you leave "Run as DB owner" checked and the "Integrated Security" unchecked. Then hit "Test Connection".
- If the connection succeds proceed with Next. If it does not there is a problem with the database yoou have made so focus only on how to resolve this. Everything else is ok.
- In the next step you are ok only if you see "Installation of Database Complete". If you see something else or the process hangs check your Database (the problem is only there). Hit Next.
- Create the Host/Admin accounts and name your baby.
- Congratulations !