我有许多 Tomcat 服务器使用较旧的 32 位版本的 isapi_redirect.dll 工作,我将默认应用程序池设置为启用 32 位应用程序。在客户端的服务器上,他们需要在同一应用程序池下安装另一个 ISAPI,该应用程序池不适用于 32 位。
我正在尝试将 isapi_redirect.dll 更新为 64 位。我tomcat-connectors-1.2.40-windows-x86_64-iis.zip
从这里下载了。我禁用了对默认应用程序池的 32 位支持并浏览到 localhost。我看到的只是 IIS 7 默认欢迎页面,而不是出现错误。如果我从它的文件夹中删除 isapi_redirect.dll,我不会收到错误消息。我认为这意味着 IIS 甚至没有尝试找到 .dll。
我是否需要启用或更改其他内容以允许 Tomcat 使用 64 位 isapi 过滤器?
我遵循与此类似的设置,除了我有一个 isapi_redirect.properties 文件而不是注册表项并且文件夹不同。这适用于我的 32 位 isapi 过滤器。我确实尝试了使用 64 isapi 过滤器的注册表方式,但也没有运气。
我让它工作。
问题是我只替换了 DLL 文件本身,还禁用了默认应用程序池的 32 位模式。当我这样做时,它不起作用。
我返回并删除了虚拟目录、ISAPI 过滤器以及 ISAPI 和 CGI 限制,然后重新启动了 IIS。
重新启动后,我使用 64 位 ISAPI 过滤器安装了所有内容,并且它在未启用 32 位模式的情况下工作。我没有更改任何配置文件,因此似乎删除所有设置并重新配置是解决方法。