【问题标题】:Are all tomcat ports needed是否需要所有的tomcat端口
【发布时间】:2014-12-16 18:18:52
【问题描述】:

我正在尝试设置一个 tomcat 服务器来托管一个 webapp,并且需要处理一些合规性问题。主要的是,只有端口 8443 应该打开并且只接受 SSL 连接,而不是 8080 或tomcat使用的任何其他端口,这些端口在其默认布局中详细说明,如下所示

  <Service name="Catalina">
    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

如果我将上面的内容更改为这样的内容会怎样?

  <Service name="Catalina">
    <Connector port="8443" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

tomcat 是否仍然可以正常工作并且只托管在端口8443 上,还是我会遇到仅使用端口8443 的问题?

【问题讨论】:

    标签: tomcat configuration webserver ports


    【解决方案1】:

    如果您不使用 SSL 配置,它不会有任何区别。重定向端口用于转发到 SSL 端口。换句话说,它只能使用端口 8443。

    查看下方的reference:

    redirectPort:如果此连接器支持非 SSL 请求,并且请求是 接收到的匹配需要 SSL 传输,Catalina 会自动将请求重定向到 此处指定的端口号。

    【讨论】:

    • 它只会接受 SSL 连接。不允许非 SSL 连接。
    • 谢谢!只是不确定默认情况下所有这些端口是否需要 3 个端口或什么。
    • 不,其实你只需要一个...... 8009 AJP端口可以在内部与apache通信(我没用过),但默认情况下tomcat有这个配置
    • 不推荐使用 AJP 端口与 HTTPD 通信,因为 HTTPD 必须将流量从 http 转换为 ajp。我不知道现在 AJP 端口的用途是什么。旁注,如果您的 Tomcat 实例前面有 HTTPD,并且这两者之间的连接不需要安全性,那么您应该在 Tomcat 上有一个简单的 http 连接器。这样你就会有 client -> https -> httpd -> http -> tomcat .
    • @Johnride 使用 Apache httpd 将 Tomcat 置于前端的用例包括负载平衡、多路复用、奇怪的身份验证方案和深度防御。当然还有其他人。至于加密httpd和Tomcat之间的流量,那是环境要求的问题。例如,如果 httpd 是云托管的,而 Tomcat 不是,则可能需要在两者之间进行一些加密。
    猜你喜欢
    • 2016-05-11
    • 2011-04-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多