Microsoft Windows Shared Hosting Seminar DotNetNuke Technical Overview May/June 2005
Section Overview Installing DotNetNuke Demo: DotNetNuke Manual Installation Enabling a Shared Hosting Offer Demo: Exploring the Host Account Demo: Provisioning DotNetNuke Enabling the Reseller Scenario Demo: Creating Multiple Portals Best Practices and Resources
Installation Requirements Current: DotNetNuke v3.0.13 or later Requires: Microsoft Windows 2000 Server or Microsoft Windows Server 2003 Internet Information Services (IIS) installed.net Framework V1.1 Microsoft SQL Server 2000
Install DotNetNuke Installation Process Unzip the code to a directory Give Network Service account permissions Create a virtual directory pointing to the content Create an empty SQL database and user account Assign permissions to db_securityadmin, db_ddladmin, db_datareader, and db_datawriter Edit Web.config for SQL connection string Browse to http://www.domain.com/vdir
Portals Defined DotNetNuke supports multiple portals within a single instance Additional portals are contained within the same site and the associated database What is a Parent Portal? Complete portal accessed by a unique domain URL: www.contoso.com What is a Child Portal? Complete portal located in a subdir of the main site URL: www.fabrikam.com/vdir
Best Practices Use page preview as Admin Make modules that are visible only to Admin show red box Pages visible only to Admin don t show any flag Add functionality with custom modules Versus making core changes Use providers for plug-in flexibility Data access, membership, HTML edit, search, scheduling, logging, friendly URLs Watch DNN forums and bug tracker for fixes See the documentation directory many details explained Visit the many resource sites for skins, containers, tutorials, other tips and tricks, and so on
DotNetNuke Ecosystem More DotNetNuke resources: Online forums for help Context sensitive help Wrox DotNetNuke Book Quickstart tutorial http://www.dotnetnuke.com/guidedtour/
DotNetNuke Community http://forums.asp.net/90/showforum.aspx
DotNetNuke Guided Tour www.dotnetnuke.com/guidedtour
Next Steps Get up-and-running with DotNetNuke www.dotnetnuke.com/hosting/default.aspx Free of charge (BSD-style open source license) Custom development and service-level agreement (SLA) support sales@perpetualmotion.ca (Shaun Walker)
Microsoft Windows Shared Hosting Seminar APPENDIX Click to add subtitle May/June 2005
DNN Architecture Web Gateway Web Presentation Layer User Controls HTML Rendering Rendering Logic Skinning Core Services (VB.NET) Data Providers SQL Server Data Provider Business Logic Layer Common Classes Logic and Security Profile and Localization SQL Server Stored Procedures Tables Functions
DotNetNuke Baseline Performance Overview Scenario: 2,000 websites on 1 front-end web server with databases on 1 back-end SQL server, both running Windows Server 2003 SP1. 400 websites were configured per application pool, with a total of 5 app pools. ASP.NET v1.1 ran in Medium Trust and we removed browsercaps and mobile support. IIS 6.0 had memory-based recycling enabled for app pools to ensure the system never reached unhealthy limits (private bytes=700mb, virtual bytes=1300mb) and an increased kernel request queue (5,000). Each test ran for 12-hours.
DotNetNuke Baseline Performance Results DotNetNuke Results Traffic Distribution: 95% traffic > 100 sites, 5% traffic > 2,000 sites Pages requested: 8 Requests-per-second: 611 Pages-per-second: 20 Total HTTP requests: 26,526,776 Average working set: 12MB Average response time: 42msec Hardware: Each server had (2) 3.6Ghz HT processors and 4GB RAM
Key Features of DotNetNuke Overall Design Easy to install and to host. Fully extensible and scalable. Clearly licensed under a BSD-style license. Constantly evolving through real world trial. Simply efficient and manageable.. Priority on security. Fully customizable.. Fully localized.. Easy to access community support.
Designed for Hosting Partitioned Data Model Enable multiple installs in a single DB User base can be shared or isolated across sites Shared admin tool constrained for current site Other features Easily add-value with customized skins Easily add-value with new language packs Skins / languages are additive
DNN Installation Walkthrough Installation Process (staging machine): Unzip the code to a directory Give ASPNET/Network Service account permissions Create a virtual directory pointing to the code Create an empty SQL database, set up account as dbowner Edit Web.config for SQL connection string Browse to http://localhost/vdir Change Host and Admin passwords! Upgrade Process (simple): Back up your current configuration Unzip the new code into the directory structure Browse to the vdir
Installation Details Initial setup build a local staging site before trying to install in a hosted environment Database = SQL (Access in v3 via 3rd party) Web.config tags (in <data defaultprovider>): objectqualifier, databaseowner Installation failures: try delete & re-create DB Web.config overview Site Builder Wizard rehydrate from template
For More Information www.dotnetnuke.com project download (register) and info support.dotnetnuke.com Gemini bug tracker www.asp.net/forums DNN forums www.gotdotnet.com/community/workspaces http://www.cathal.co.uk/default.aspx?tabid=28 Free v2 modules list (v3 coming) + resources + great skin! http://dnnjungle.vmasanas.net resource portal www.wwwcoder.com resource portal www.dnn.com.au resource portal www.dotnetnukehelp.com resource portal www.asp.net Microsoft s ASP developer site http://msdn.microsoft.com/library/enus/dnaspnet/html/asp02182004.asp - Whidbey Provider Model http://spaces.msn.com/members/faithinteractive/?partqs=cat%3ddotnetnu
Best Practices Continued Installation failures: try delete & re-create DB Check SQL Database configuration Verify accuracy of Web.config file Visit the forums http://forums.asp.net/90/showforum.aspx DotNetNuke Online Help Site http://www.dotnetnuke.com/default.aspx?tabid=787& us&helpmodule=portals
DotNetNuke Portal Builder Build fully functional site in minutes Online content authoring (no HTML) Wizard to help users build sites Integrated forum/blog/gallery Membership features RSS content syndication Rich 200 module ecosystem Customizable (modules, skins)
DotNetNuke: Wizard Step 1: Choose a template Step 2: Choose a design Step 3: Add title and details Site pages are built
DotNetNuke: Adding a Module Admin Bar Select Module
Example: WebFusion http://www.webfusion.co.uk/?source=webfusion-pipexportal