开发者社区> 问答> 正文

ECS Windows云服务器IIS和Tomcat共用80端口

ECS Windows系统服务器如何实现Tomcat和IIS共用80端口?

展开
收起
开发者说 2019-08-01 11:14:33 816 0
1 条回答
写回答
取消 提交回答
  • 问题原因

    思路就是利用IIS可以建立多个网站的功能,将Tomcat下的项目添加为IIS的一个站点,再使用一个可以redirect的插件,将IIS中指向此站点的请求交给Tomcat来处理。

    解决方案

    1. 首先,需要一个可以实现redirect的插件isapi_redirect,可以到网上下载,如:isapi_redirect-1.2.14.dll;

    2. 然后,在随便哪个地方建立一个注册表编辑文件.reg,并输入以下内容:

    Windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation]

    [HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector]

    [HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector\1.0]

    "extension_uri"="/jakarta/isapi_redirect.dll" /文件名称可以改,路径最好别改,因为要和iis中的筛选器配置对应/

    "worker_file"="C:\Tomcat 6.0\conf\workers.properties" /*具体由自己的路径定/

    "worker_mount_file"="C:\Tomcat 6.0\conf\uriworkermap.properties" /同上/

    "log_file"="C:\Tomcat 6.0\logs\isapi.log"

    "log_level"="info"

    1. 在Tomcat的conf文件夹下建立workers.properties文件,并输入以下内容:

    worker.list=ajp13

    worker.ajp13.type=ajp13

    worker.ajp13.host=localhost

    worker.ajp13.port=8009

    1. 同样建立uriworkermap.properties内容如下

    /*.jsp=ajp13

    /*.do=ajp13

    /*=ajp13

    1. 在Tomcat的log目录下建立isapi.log文件,内容为空即可

    2. Tomcat6.0目录下新建jakarta文件夹,然后把isapi_redirect.dll放入其中.

    3. 配置Tomcat的server.xml文件

    在节点下,修改

    <Host name="www.xxxx.com" appBase="webapps"

            unpackWARs="true"
    
            xmlValidation="false" xmlNamespaceAware="false">
    
                  <Context path="" docBase="netfile" debug="0" reloadable="true" />
    

    的内容,name为网站要设的域名,下面在iis里新建网站的时候域名要和这个一样;docBase的值为网站文件夹,即”.. Tomcat 6.0\webapps\”下项目文件夹的名称;

    1. 运行.reg文件, 并打开HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector\1.0项,检查右边项目中是否包含如下项:

    extension_uri /jakarta/isapi_redirect.dll (jakarta为IIS下的虚拟目录)

    log_file c:\Tomcat6.0\logs\isapi.log (指定JK插件使用的日志文件)

    log_level debug (指定日志级别)

    worker_file c:\Tomcat6.0\conf\workers.properties (指定JK插件的工作文件)

    worker_mount_file c:\ Tomcat6.0\conf\uriworkermap.properties (指定JK插件的URL映射)

    如果没有上述项,则建立相关项和相关值

    1. 以上为Tomcat配置;

    2. 打开“管理工具”-“Internet信息服务(IIS)管理器”,展开“本地计算机”,选择网站,如图:

    image.png

    在右侧点右键,新建-网站,点击“下一步”,输入网站描述,点击“下一步”,输入“主机头”,如图:

    image.png

    下一步,选择主目录(tomcat下webapps里的项目根目录),勾选“运行匿名访问”,如图:

    image.png

    下一步,在“允许权限”里,勾选“执行…”选项,以支持isapi_redirect,如图:

    image.png

    下一步,完成网站新建。

    1. 在新建的网站上点右键选“属性”,在弹出的页框里选择“ISAPI筛选器”,点“添加”,筛选器名称填jakarta,可执行文件中填入isapi_redirect-1.2.14.dll的绝对路径(包括文件名),如图:

    image.png

    1. 再在“此网站”上右键,选择“新建”->“虚拟目录”,别名填jakarta,下一步,路径选为isapi_redirector.dll存放的目录(不包括文件名),下一步,权限中“执行”那项打勾。

    2. 应用程序扩展名映射:在主目录里点配置,在跳出的窗口应用程序配置中增加.jsp应用程序扩展名映射,可执行文件指向isapi_redirect-1.2.14.dll文件(并且将该输入框中的所有内容用“”括起来,否则会提示应使用()括起来【但此处的()应为“”,是系统汉化时的翻译错误】),动作限制为GET,HEAD,POST,DEBUG (手动输入)如图:

    image.png

    1. 在“Internet信息服务管理器”的“网站”中的“Web服务扩展”上点右键选择“添加一个新的Web服务扩展”,

    image.png

    弹出的框中扩展名填JSP(无所谓的,自己随便设置名称),“要求的文件”选“添加”然后找到你的isapi_redirector.dll后“确定”。 “设置扩展状态为允许”也打上勾,确定。添加之后,如图:

    image.png

    1. 重启IIS,重启Tomcat.

    2. 检查新建的网站是否加载成功isapi_redirect-1.2.14.dll文件,在网站的属性里,切到筛选器页,

    image.png

    配置完成。

    2019-08-01 11:17:22
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
如何运维千台以上游戏云服务器 立即下载
网站/服务器取证 实践与挑战 立即下载
ECS计算与存储分离架构实践 立即下载