Changes in ASP Features in IIS 6.0
ASP has undergone several important changes and enhancements. If you are updating your application from a previous version of ASP, you should be aware of these changes. This topic does not include the Changes in ASP Features in IIS 5.1.
ASP Pages are Disabled by Default
In order to take a more proactive stance against malicious users and attackers, IIS is not installed on members of the Microsoft® Windows® Server 2003 family by default. Furthermore, when you initially install IIS, the service is installed in a highly secure and "locked" mode. By default, IIS serves only static content — meaning features like ASP, ASP.NET, Server-Side Includes, WebDAV publishing, and FrontPage® Server Extensions do not work unless enabled. If you do not enable this functionality after installing IIS, IIS returns a 404 error. You can serve dynamic content and enable these features through the Web Service Extensions node in IIS Manager. Also, if an application extension is not mapped in IIS, IIS returns a 404 error. To map an extension, see Setting Application Mappings. For more information on how to troubleshoot 404 errors, including 404.2 and 404.3; issues related to a new installation of IIS 6.0; or an upgrade from a previous version of IIS, see Troubleshooting Common IIS Errors.
ASP Metabase Properties Removed
The following metabase settings are no longer used by ASP, even though they are still in the metabase for compatibility with existing administration scripts:
On IIS versions 5.0 and earlier, ASP executed events in the security context (or user identity) of the host process because during these events there is no user context. This caused problems such as access denied errors when writing to a file in the Session_OnEnd event. ASP, by default, now runs the global.asa events, Application_OnEnd Event and Session_OnEnd Event, anonymously. This can be controlled by the metabase setting, AspRunOnEndAnonymously
Using Parent Paths
The metabase setting, AspEnableParentPaths, is now set to 0 by default as a security precaution. This affects your application if it has a Web pages that contains the #include server-side include directive and uses ".." notation to refer to a parent directory.
The "Templates Cached" Performance Counter
The AspTemplatesCached performance counter now counts the number of cached ASP files, both on disk and in memory. In previous versions, because there was no disk-based caching, this counter referred only to the in-memory cache. There is also a new counter called AspInMemoryTemplatesCached that reflects the number of ASP pages in the memory cache, it's the number of templates cached in total memory.
ASP Hang Detection
When an IIS Web site is busy, there may be instances when the maximum number of ASP threads has been spawned and some of the ASP threads are unresponsive, resulting in degraded performance. IIS 6.0 has the ability to solve the problem of unresponsive threads by recycling the worker process that hosts that particular instance of the ASP ISAPI extension, ASP.dll. When ASP threads are unresponsive in IIS 6.0, ASP.dll calls the ISAPI server support function HSE_REQ_REPORT_UNHEALTHY, and the WWW service will recycle the worker process that hosts ASP.dll, and make an entry in the event log.
For more information on ISAPI Server Support Functions, see ServerSupportFunction in the ISAPI Extension Reference at MSDN Online.
Better International and UTF-8 Support
UTF-8 support has been expanded to all ASP built-in object properties and methods. The last version of ASP supported UTF-8 only for Response.Write.
Improved POST Support
ASP can now read chunked-encoded POST data from a client.
Caching of Popular Files
ASP now caches some of the most-recently used files on disk, in addition to keeping a memory cache. The default location of the disk cache is %systemroot%\System32\inetsrv\ASP Compiled Templates. You can change the location of the disk cache by setting the AspDiskTemplateCacheDirectory metabase property.
ASP can now handle UNC paths in ASP scripts.
New Metabase Properties for ASP
The following metabase settings have been added for this release of ASP:
COM+ Services in ASP