绑定和代理IIS和Tomcat参数不起作用

时间:2015-07-15 11:35:24

标签: web-services tomcat iis binding proxy

我正在我的localhost上设置三个服务,一旦我设法修复我的最后一个问题,这将被移动到服务器。我要做的是设置它,以便通过端口80访问所有服务。

其中一项服务托管在Tomcat中,另外两项托管在IIS中。

我已经使用URL Rewrite来代理发送到Tomcat服务的请求,以便现在可以通过端口80访问它。

我可以在IIS中使用Bindings来强制通过端口80访问其他两个服务。

这是预期的结果:

  • jft.serviceadmin.localhost将访问一个IIS服务
  • jft.api.localhost将访问其他IIS服务
  • jft.generatepdf.localhost将访问Tomcat服务

我已将这些网址添加到主机文件中,到目前为止,所有内容都运行良好。当我在浏览器中访问Above URL时,我得到了预期的结果。

但是,当我从客户端尝试使用几个参数(ID,Key等)访问jft.generatepdf.localhost时。我收到一个错误,指出无法找到单位ID“null”。此错误消息由我自己的服务生成,所以我不希望任何人在这里能够读取任何内容。然而,我要问的是,是否有人能够解释为什么会发生这种情况?

如果我删除了两个IIS服务的绑定并执行相同的操作,那么它的效果很好。 ID按预期传递给我的数据库,我得到一个PDF作为回报(这是generatePdf的目的:))

任何想法?

1 个答案:

答案 0 :(得分:0)

我自己找到了答案,所以如果有人在某个时候遇到这个问题,请务必尝试所描述的解决方案:

具有端口80绑定的本机IIS服务(在我的案例中为jft.api.localhost和jft.serviceadmin.localhost)需要以与代理服务需要的方式相同的方式添加URL重写规则。

因此,通过将它们托管在两个单独的端口(例如8181和8282)以及端口80的绑定上,您可以应用与为tomcat服务添加重写规则时使用的技术相同的技术。