我在将服务于 WAR 应用程序的 tomcat 服务器与当前托管普通 c# 站点的 IIS7 服务器集成时遇到问题。本质上,问题在于,当 IIS7 站点启动并运行良好时,我想将当前仅在本地可用的 tomcat 服务器添加到 Internet。这可能吗?我说 mydomain.com 当前在 IIS 服务器上运行,但我希望将 IIS7 用作代理来为 Tomcat WAR 应用程序服务,以便它可以通过子域托管,例如:sub.mydomain.com/休息/api/通话。我目前将我的 IIS7 服务器托管在端口 80 上,并且刚刚被允许使用端口 8080。
这是我已经完成的操作:我尝试通过 IIS 如何从该站点进行操作:Tomcat iis howto 按照 ISAPI 重定向步骤,我可以获得 tomcat 图标徽标(可能通过虚拟路径),而且IIS 404 错误。具体来说:
Requested URL: http://111.111.111.111:8080/MyWarAPP/App/
Physical Path: C:\apache-tomcat-7.0.39\webapps\MyWarAPP\App\
部分问题在于我本身不一定有物理路径,因为 WAR 文件是提供 REST 服务的 Java EE Web 服务。我的想法是,通过拥有一个子域,它不会与主站点 mydomain.com 发生任何冲突。另一个想法是将它放在 mydomain.com/app/RESTgoesHERE 目录中
仔细阅读过去的 stackoverflow 问题,我发现了一些使用 iis 的 ARR 扩展的建议。这是解决我遇到的问题的正确步骤吗?
如果我对任何事情不够具体,请告诉我。我尽力描述手头的问题。
几点注意事项:
- 我在 Windows 7 服务器上同时托管 IIS7 和 Tomcat 7.0.39
- IIS7 已经在 Internet 的 80 端口上很好地托管了 Web 文件。
- Tomcat 服务器仅在本地服务器上运行良好
- 8080 端口可用。
- 如果可能,我需要两台服务器使用相同的域名:mydomain.com
- 我正在使用 startup.bat 文件运行 tomcat,并更改了我的注册表文件以反映基于Tomcat iis howto的建议。
- 在任何计算机上输入我的 ip,例如 111.111.111.111 指向 IIS7 主站点 mydomain.com
- 通过输入我的 ip 和端口 8080,服务器会尝试访问此处所示的物理位置,而不是启动 WAR 文件:
谢谢!