IIS Tomcat共享80端口

Posted LittleFeiHu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IIS Tomcat共享80端口相关的知识,希望对你有一定的参考价值。

为什么有这种需求,

原因是这样的,

公司有一个Java的web项目,在另一台服务器A上,最近老板一时兴起,想把他合并到这台稳定点的服务器B上,服务器B上使用IIS来寄宿asp.net 网站,

怎么办呢,硬着头皮上吧,在网上找各种解决方案:

  • 解决方案一:isapi_redirect

这个方法按照方法试了N次就是没搞定,

  • 解决方案二:IIS反向代理

基本逻辑就是请求来到IIS,IIS根据路由规则把请求转发给Tomcat处理,然后tomcat把响应返回给IIS,

这个方案依然只是IIS独占端口80,看起来的感觉好像是IIS Tomcat共享80端口

需要安装一个IIS插件 下载地址如下 https://www.microsoft.com/web/handlers/webpi.ashx/getinstaller/ARRv3_0.appids

在IIS UI上各种配置之后生成的配置文件如下:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="tomcat">
                    <match url="^(.*)" />
                    <conditions>
                        <add input="{HTTP_HOST}" pattern="^www.ahapc.org$" />
                    </conditions>
                    <action type="Rewrite" url="http://localhost:8080/{R:1}" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

 ^(.*) 这个正则表示匹配所有请求,

www.ahapc.org 表示输入匹配,就是说如果你的请求包含www.ahapc.org,则满足了转发条件

http://localhost:8080/{R:1} 表示满足上面的条件之后转发给本地8080去处理,也就是交给本地的Tomcat处理

  • 解决方案三:nginx反向代理

 

以上是关于IIS Tomcat共享80端口的主要内容,如果未能解决你的问题,请参考以下文章

IIS7和Tomcat7整合,即IIS7和Tomcat共用80端口

实现tomcat与IIS公用80端口

windows2003 IIS集成Tomcat,访问8080端口的时候都是正常的,但是通过IIS虚拟目录访问80端口报404错误。

两台WEB服务器,一台TOMCAT,一台IIS,路由中把80端口映射到TOMCAT上,如何在TOMCAT中将指定网址转到IIS上

只有一个主机和独立ip,iis和php怎样共享80端口。

为啥tomcat换成80端口就不能访问了?而其他端口可以