May/June 2005
Microsoft Windows Shared Hosting Seminar
®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 f
Microsoft Windows Server™ 2003
Internet Information Services (IIS) installed f
.NET Framework V1.1 f
Microsoft SQL Server™ 2000 f
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, f
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,
DotNetNuke Ecosystem
More DotNetNuke resources: Online forums for help
Context sensitive help
Wrox DotNetNuke Book
Quickstart tutorial
DotNetNuke Community
DotNetNuke Guided Tour
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
[email protected] (Shaun Walker)
May/June 2005
Microsoft Windows Shared Hosting Seminar
®APPENDIX
DNN Architecture
Stored Procedures Tables Functions
Core Services (VB.NET)
Business Logic Layer Data Providers
Common Classes Logic and Security SQL Server Data Provider
Profile and Localization Web Gateway
Web Presentation Layer User Controls
Rendering Logic
HTML Rendering
Skinning
SQL Server
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
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/en-
us/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)