如何在Windows 10上为IIS 10启用ISAPI DLL?

Car*_*sen 4 isapi windows-10 iis-10

我已经为IIS 7.x配置了ISAPI DLL多年,但这是我第一次尝试使用Windows 10,但它无法正常工作,我找不到任何有关如何成功完成的说明.我在Windows 10 Professional中工作,并安装了IIS和支持技术.

这是我过去所做的.首先,我打开Internet Information Services Manager控制台.然后,我选择默认Web站点并打开Handler Mappings.我在"禁用"部分右键单击"ISAPI-dll",选择"编辑功能权限",然后在"执行"旁边选中复选标记.

由于我的ISAPI DLL是32位DLL,并且我运行的是Windows 10 64位专业版,因此​​我在"连接"窗格中选择"应用程序池",右键单击"DefaultAppPool",然后选择"高级设置",然后将"启用32位应用程序"设置为真正.

最后,我打开ISAPI和CGI限制小程序.然后,我右键单击ISAPI和CGI限制窗格并选择编辑功能设置,然后在"允许未指定的ISAPI模块"旁边放置复选标记.

Handler Mappings applet不再具有禁用的ISAPI-dll条目.但是,打开Handler Mappings小程序后,我可以选择编辑功能权限,并在Execute旁边放置一个复选标记.我已经能够在默认应用程序池中允许32位应用程序,但ISAPI和CGI限制小程序无处可寻.

最终的结果是,尽管我已经成功执行了如上所述的配置,但仍然无法运行我的ISAPI DLL.我已将DLL放在与Windows 7安装程序相同的位置(在c:\ inetpub\wwwroot\appfolder下),并使用相同的URL.它在Windows 7中运行,但在Windows 10中不运行.

如何在Windows 10中配置IIS以运行此ISAPI DLL?

小智 12

也许是一个愚蠢的问题,但您确定"CGI"和"ISAPI扩展"功能是作为"Internet信息服务","万维网服务","应用程序开发功能"的一部分安装的吗?我刚刚测试过,如果没有这两个功能,您将看到Handler Mappings,但没有禁用的ISAPI-dll条目(也没有"ISAPI和CGI限制"applet).

有了这些功能,我可以在Windows 10中以与Windows Server 2012相同的方式使用IIS7.

  • 当然,这根本不是一个愚蠢的问题。我以为我已经安装了所有必要的 Windows 功能,就像我过去很多次一样。但是,在阅读您的答案后,我又看了一遍。我确实没有勾选 Internet Information Services | 万维网服务 | 应用程序开发功能 | ISAPI 扩展(以及同一组中的 CGI)。谢谢,鲍勃,又是一次很棒的收获! (2认同)