![Page 1: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/1.jpg)
Developing and Deploying Applications on Microsoft Internet Information Services (IIS)Thomas DemlGroup Program ManagerWeb Platform And ToolsMicrosoft Corporation
![Page 2: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/2.jpg)
Agenda
Getting startedReview of the web platform stackDemo: Downloading the web platform stack
Getting productiveExtend an application using IIS’ total extensibility Demo: Extend web application with custom functionality
Going liveFrom your dev box to the live serverDemo: Deploying an app to a live server via explorer
Fine-tuning and troubleshooting:Management, monitoring and troubleshootingDemo: Database manager, powershell and request tracing
Going publicSubmit to the web application gallery
![Page 3: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/3.jpg)
Getting Started: Installing the Web Platform Stack
demo
![Page 4: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/4.jpg)
Top 8 Reasons to Move to IIS7
8. SecurityFeature delegation, built-in accounts, Application pool isolation, rich authentication and authorization infrastructure, request filtering
7. Single platform for both ASP.NET and PHPIntegrated Pipeline, FastCGI
6. High availability Rich process model
5. PerformanceOptimized for multi-proc environments, compression, SSL in kernel-mode
![Page 5: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/5.jpg)
Top 8 Reasons to Move to IIS7
4. DiagnosticsPowerful, extensible diagnostics stack, run-time data
3. Configuration systemReadable, extensible, delegateable, distributed, centralized
2. AdministrationUser interface, remoteable, command-line tools, scripting and rich API set
1. Extensibility Run-time, configuration, diagnostics stack and user interface
![Page 6: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/6.jpg)
IIS Application ExtensionsURL rewrite module• Security• SEO• Clean
URLs
Database manager• Simple,
application-centric database managment
Remote manager• Delegate
d• Firewall-
friendly
Web deployment tool• Applicatio
n packaging and deployment
![Page 7: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/7.jpg)
IIS7 Server ExtensionsWebDav and FTP• Standards-
based• Secure and
firewall-friendly
Admin Pack and Power Shell Snap-in• Powerful
ways to manage IIS
Media Services 3.0• Smooth
Streaming• Bit-Rate
Throttling• Live
Smooth Streaming
Application Request Routing• Load-
balancing• Proxy
functionality
• Edge caching
Dynamic IP Restrictions• Prevent
DoS attacks
Web Deployment Tool• Migration• Web Farm
Sync
![Page 8: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/8.jpg)
Total Extensibility
Server run-timeExtend IIS in native or managed code via the integrated pipeline
Configuration systemExtend the configuration system with a simple XML file. Automatic support in the user interface, command-line, script, native and managed code apis
TracingFollow your requests from start to finish: get detailed errors, monitor currently executing requests, go deep with request traces
User interfaceIntegrate your own user interface with a few lines of code, get automatic remoting and delegation
![Page 9: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/9.jpg)
Run-time ExtensibilityIIS6 Architecture
Authentication
Basic NTLM Anon
...
DetermineHandler
...
Response Compression
Logging
HTTP Request
HTTP Response
CGI
Static File
ISAPI
Monolithic server implementation
Limited customizationFixed functionality
Limited ISAPI Filter extensibility
![Page 10: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/10.jpg)
Authentication
...
ExecuteHandler
...
SendResponse
HTTP Request
HTTP Response
Authorization
UpdateCache
ResolveCache
Extensibility IIS7 Architecture
BasicNTLM Anon
CGI
Static File
ISAPI
Log Compression
UrlAuthz
OutputCache
Forwarder
Basic40+ Componentized serverPluggable modular functionalitySmall generic request pipeline
EnablesLightweight serversCustom/specialized servers
![Page 11: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/11.jpg)
Extensibility IIS6 + ASP.NET
ISAPI extensionOnly processes ASP.NET requestsRuntime limitationsFeature duplication
Authentication
Basic NTLM Anon
...
DetermineHandler
...
SendResponse
HTTP Request
HTTP Response
CGI
Static File
ISAPI
Compression
Log
aspnet_isapi.dll
Authentication
MapHandler
Forms Windows
...ASPX
Trace
...
...
![Page 12: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/12.jpg)
ISAPI
Authentication
...
ExecuteHandler
...
SendResponse
Authorization
UpdateCache
ResolveCache
HTTP Request
HTTP Response
IIS7 ASP.NET IntegrationClassic mode
For compatibilityIntegrated mode (Integrated pipeline)
Can process all requestsEnhanced functionalityHigher fidelity notifications
Anon
aspnet_isapi.dll
Authentication
MapHandler
...
...
Forms Windows
ASPX
Trace
...
Basic
Compression
Log
Static File
![Page 13: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/13.jpg)
.NET Extensibility
Existing ASP.NET APIIHttpModule and IHttpHandler types
Expanded ASP.NET APIsNew HttpApplication Events
MapRequestHandler, LogRequest, PostLogRequest
HttpRequest.HeadersHttpResponse.HeadersHttpResponse.DisableKernelCacheHttpRequest.ServerVariables
![Page 14: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/14.jpg)
Handlers versus Modules
Modules provide services to all requestsBasic authentication moduleCompression module (etc)
Handlers provide services to specific extensions
ISAPI handler (.dll)Static handler (.htm, .jpg, .gif, etc)
IIS 7 pipeline allows native and managed modules and handlers
“Integrated” application pool mode Use the managed modules and handlers
“Classic” application pool IIS 6 style invocation of .NET
![Page 15: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/15.jpg)
Getting Productive: Extending an Existing Application
demo
![Page 16: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/16.jpg)
Going Live
Package and deploy your web application with the web deployment tool
You don’t have to be adminDeployment via
IIS management snap-inRemote managerCommand-lineApiPowershell
Can also be used for Synchronization
Incremental sync supportBackupVersioning
![Page 17: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/17.jpg)
Deploying an App to a Live Server
demo
![Page 18: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/18.jpg)
Managing the Server
User interface remoted via HTTPSNon-admin and delegation support
Command-linePowershell snap-inAppcmd
ScriptingPowershellCOM via AHAdminWMI
APIsConfiguration APIMicrosoft.Web.Administration
![Page 19: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/19.jpg)
Managing Your Web Application on a Live Server
demo
![Page 20: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/20.jpg)
Summary
IIS7 is built with total extensibility in mind
Run-timeConfiguration systemUser interfaceDiagnostics
IIS7 application and server extensions offer compelling functionality
![Page 21: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/21.jpg)
IIS7 Extensions
Powershell snap-in
Database manager
Admin pack
URL rewriterApplication
request router
WebDav
FTP server
Web platform installer
Web deployment
tool
Media services
Remote manager
Dynamic IP restrictions
![Page 22: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/22.jpg)
Please Complete an Evaluation FormYour feedback is important!
Evaluation forms can be found on each chairTemp Staff at the back of the room have additional evaluation form copies
![Page 23: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/23.jpg)
© 2009 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.
![Page 24: Developing and Deploying Applications on Internet Information Services (IIS)](https://reader036.vdocuments.net/reader036/viewer/2022062419/558e3ad01a28ab99228b470d/html5/thumbnails/24.jpg)