我们在服务器上为客户管理一些网站,一些运行 Windows Server 2003 R2,另一些运行 2008 R2。在 Windows Server 2008 R2 中,我们可以完全禁用某些应用程序池的 .NET 框架使用,这非常好,因为我们的大多数网站仍在使用经典 ASP。
在将经典 ASP 应用程序配置为在 CLR 2.0 池中作为 ASP.NET 4 运行时出现一些问题后,我们想在 IIS6 中做同样的事情 - 即拥有没有任何.NET 支持的应用程序池。
这是 IIS6 支持的场景吗?
谢谢
答案1
如果要在整个 IIS 中完全禁用 .NET 支持,请运行
aspnet_regiis.exe -u
您需要针对已安装的每个框架版本运行此程序。可执行文件位于 %SystemRoot%\Microsoft.NET\Framework\vx.xxx
完成此操作后,您会发现 IIS 中网站的属性上没有 ASP.NET 选项卡。但请注意,对 .NET 框架的更新最终可能会在 IIS 中重新注册它。
如果您的服务器上有一些站点使用 ASP.NET,而其他站点仅使用 Classic ASP,那么您可以将所有 Classic ASP 站点放入它们自己的 AppPool 中,将 .NET 站点放入它们的 AppPool 中。您肯定已经发现,AppPool 中的所有应用程序都必须配置为使用相同版本的框架。我不知道如何为特定站点禁用 ASP.NET。
答案2
不确定应用程序池,但对于网站,您可以在主目录选项卡>配置>映射选项卡上进行配置,并删除每个具有 C:\Windows\Microsoft.NET\Framework.... 可执行文件的映射。通常针对 aspnet_isapi.dll。