Date post: | 24-Dec-2015 |
Category: |
Documents |
Upload: | kelly-lynch |
View: | 214 times |
Download: | 0 times |
Agenda
• IIS 7 Architecture• Extending the Pipeline
– Demo: Modules & Handlers
• Extending the Configuration– Demo: Dynamic Configuration
• Extending the UI– Demo: IIS Manager Module
IIS7 Architecture
Authentication
...
ExecuteHandler
...
SendResponse
HTTP Request
HTTP Response
Authorization
UpdateCache
ResolveCache
Authentication
...
DetermineHandler
...
SendResponse
HTTP Request
HTTP Response
BasicNTLM Anon
CGI
Static File
ISAPI
Log Compression
UrlAuthz
OutputCache
Forwarder
Basic40+ • Componentized server– Pluggable modular
functionality– Compact generic
request pipeline
• Enables– Lightweight servers– Custom / specialized
servers
DEMO
Different parts of IISMadhur JoshiDevelopment LeadWeb Platform and Tools
IIS 7
Configuration System.NET + IIS7
NET global settingsASP.net global settings
.NET Framework Root web.configMachine.config
Global settings and location tags
Applicationhost.config
Site web.config
<system.web>.NET settings
Site web.config
<system.webServer>IIS7 Delegated settings
You have your own configuration?
• IIS settings now live in ApplicationHost.config – Can also be specified in web.config if delegation
is allowed
• All settings are schematized in XML– Schema files live in %windir%\system32\inetsrv\
config\schema
• Extending configuration– Static Configuration
• Drop a .xml file into the schema directory• Add a section to applicationHost.config
DEMO
Storing and accessing your own configurationMadhur JoshiDevelopment LeadWeb Platform and Tools
Tools for Every Need
• AppCmd.exe– Command line to query and modify configuration
• IIS Manager– Extensible UI
• WMI, Scripting– AHADMIN is a new COM interface for managing
configuration system
• PowerShell• Managed Code
– Microsoft.Web.Administration provides a simple managed API to edit configuration
• WebDeploy
DEMO
Control your site from command line or an appMadhur JoshiDevelopment LeadWeb Platform and Tools
IIS Manager
• UI to control everything IIS and beyond• Completely re-written using .NET Windows
Forms and managed code• IIS Manager is now easily extensible
– Add new feature pages– Extend tasks for sites/applications– And more…
• Extensibility Framework– Microsoft.Web.Management.dll
• Transparent remoting over HTTPS
Web Management Service(WMSvc)
Standalone Web Server http://server:8172
IIS Manager ArchitectureIIS Manager Client Connection
Module UI
IIS 7.0 Application AppDomainProvider
Runtime State
Module Service
Connection Manager
Framework Module UI
Module Service Proxy
Extending IIS Manager
• Write service-side dll– ModuleProvider– ModuleService
• Write client-side dll– Module– ModuleServiceProxy– ModulePage
DEMO
Extend IIS ManagerMadhur JoshiDevelopment LeadWeb Platform and Tools
So you want to build your own webserver
• Hostable Web Core– Activate– Run– ShutDown
DEMO
Your own webserverMadhur JoshiDevelopment LeadWeb Platform and Tools
More Info
• http://www.iis.net • http://learn.iis.net/page.aspx/347/dev
eloping-on-iis-7/
• http://msdn.microsoft.com/en-us/library/ms692515(v=VS.90).aspx
• http://blogs.iis.net/ksingla/archive/2007/12/20/ins-amp-outs-of-hostable-web-core.aspx
ResourcesSoftware Application
Developers
http://msdn.microsoft.com/
Infrastructure Professionals
http://technet.microsoft.com/
msdnindia technetindia @msdnindia @technetindia
© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and
Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.