简体   繁体   中英

ASP.NET v4 Extensionless URL feature does not work on IIS 6.0

To avoid static requests impact performance, I want to use the ASP.NET v4.0 Extensionless URL feature, but it does not work.

My environment:

  1. windows server sp2 and IIS6
  2. asp.net MVC 3 with .net 4
  3. The site is configured for ASP.NET 4.0 and no virtual folders
  4. no isapi rewriting

I requested the url like "http://domain.com/home/", then get "/home/eurl.axd/f7e1f50533b94f47869a8856c16dffdf/" 404 error.

Error message show that: Microsoft .NET Framework version:4.0.30319; ASP.NET version:4.0.30319.1

It seems that: aspnet_filter.dll appends “/eurl.axd/GUID” to extensionless URLs and aspnet_isapi.dll does not remove “/eurl.axd/GUID”.

I want to know how to resolve this problem? (I need extensionless url and can not use wildcard script mapping)

Thanks

Update - Resolved

Remove the v2.0 aspnet_isapi.dll in the root web site's ISAPI Filters

To use ASP.NET v4 extensionless URL feature, check this list:

1) v4.0 aspnet_filter.dll is registered as an ISAPI filter at the web server level.

2) ".axd" is script mapped to the v4.0 aspnet_isapi.dll at the web site level.

3) the web site has read and script permission.

4) "EnableExtensionlessUrls" in registry is not set or is set to 1.

5) the web site configure to asp.net 4.0

6) v2.0 aspnet_filter.dll is not registered,check the root website's ISAPI Filter List (this cause my problem)

If the above checks out, the only other thing you need is a routing table or some ASP.NET code that remaps the URL to a managed handler.

Notice that IIS 6 and IIS 7 have two different pipelines and so ASP.NET applications run differently in these two invironments.

Please read: ASP.NET Integration with IIS 7

In IIS 7, the ASP.NET request-processing pipeline overlays the IIS pipeline directly, essentially providing a wrapper over it instead of plugging into it.

but

In IIS 6.0 and previous releases, ASP.NET was implemented as an IIS ISAPI extension.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM