<

Go Premium for a chance to win a PS4. Enter to Win

x

Enabling ISAPI in IIS 7 on Windows Server 2008

Published on
12,551 Points
6,451 Views
1 Endorsement
Last Modified:
What is an ISAPI filter?  
•      It's an assembly (.dll file) that can add or change the way IIS works.  
•      They can be enabled globally for your web server or on a site-by-site basis.  

When the IIS server receives a request, enabling the ISAPI filter will cause IIS to watch the requests coming and going, listening for one that calls a function that is specific to the filter.  When that particular function is called, the ISAPI filter allows the request to be directed to the appropriate assembly for execution and response.
 
For example, let's say you have a .dll that allows you to send you an e-mail when the user triggers an "access denied" response from the server.  When you enable the filter, any user request that triggers an access denied response will first execute the custom .dll's code, that code will send you an e-mail, and then control passes back to IIS to continue processing the access denied response.
 
 You can find an excellent (and short!) low-level explanation of ISAPI Filters at the following article:
 
http://msdn.microsoft.com/en-us/library/ms524610(v=vs.90).aspx
 
Some applications need support for ISAPI extensions and this is disabled by default in IIS.  Enabling ISAPI for an individual web is very easy, provided the web application is running in Integrated Mode.  However, since my shop has a combination of 2.0 and 40. apps, Classic and Integrated, and even Enable 32-bit Applications True/False, our "Classic" apps will not allow IIS 7 to set ISAPI without manually editing the web.config.  This can get tedious when we push new web.config files to the server.  Thus ISAPI needs to be enabled at the server level so it can trickle down to individual apps making ISAPI calls.  This is done in two phases:
 
1.      Adjusting ISAPI settings in a configuration file.
2.      Enabling ISAPI for each type of Application Pool using the IIS 7 Manager


The attached PDF covers the process of enabling ISAPI in IIS 7.  It was performed on Windows Server 2008 in order to support a third-party .dll that made use of ISAPI extensions.  If you are needing to enable ISAPI on your Windows-based web application server this document should help you because ISAPI is not enabled by default in Windows Server 2008.

This guide will walk you through the process, but is not intended to cover why you would want ISAPI - that is a decision you should consider when you have a need, and not just because you can. Enabling-ISAPI-in-IIS7.pdf
1
Comment
1 Comment
 
LVL 4

Author Comment

by:PyanfarChanur
Thanks Mark - I did re-read the guidelines for Experts Exchange earlier.  To be honest, I think this is probably better as a "How-To" than anything else.  The bottom line is I want to graphically walk people through steps like these and figured a neatly-encapsulated PDF is the way to go.  I'll remove and re-do...perhaps I need a bit more schooling in our interface here first too.

Thanks again for your help!

Pyanfar
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Join & Write a Comment

We’ve all felt that sense of false security before—locking down external access to a database or component and feeling like we’ve done all we need to do to secure company data. But that feeling is fleeting. Attacks these days can happen in many w…
Loops Section Overview

Keep in touch with Experts Exchange

Tech news and trends delivered to your inbox every month