【问题标题】:How to make Tomcat run on 443 instead of its default port 8080? [closed]如何让 Tomcat 在 443 而不是其默认端口 8080 上运行? [关闭]
【发布时间】:2014-08-14 10:43:15
【问题描述】:

我们需要在端口 443 而不是端口 8080 上运行 Tomcat 及其所有应用程序。任何人都可以就如何实现这一点提供指导吗?过程、好处和影响。

【问题讨论】:

  • 您可以更改server.xml 文件以更改默认端口。
  • 这个问题与Java编程无关,你应该在服务器管理论坛上问它。顺便说一句,Tomcat 的人写了一些文档......

标签: java tomcat web-applications port


【解决方案1】:
Tomcat_home/conf/server.xml

search for 
<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

change 8080 to 443

【讨论】:

  • 443 是特权端口,所以他也必须以 root 身份运行
  • 要求应用程序在端口 443 上运行表示需要使用 SSL,所以这可能无法解决提问者的问题(尽管这个答案在技术上是正确的......)
  • @maress 这仅适用于类 unix 操作系统..
  • @ abhishek 我确实将其更改为端口 443 并重新启动服务器。然后尝试在浏览器中触发 localhost:443,但 Tomcat 主页没有显示,而是 URL 不断被重定向到 @987654322 @.
  • 我不知道你为什么需要 443 作为 HTTP 端口,我的回答只是告诉你如何更改你的 tomcat 的 HTTP 端口,现在当出现 443 的问题时,你应该熟悉它,我不想输入太多所以只是参考下面的网址检查它blog.simple-help.com/2011/12/ports-vs-protocols-80-and-443如果有人有更有用的链接那么请在这里分享。
【解决方案2】:

查看 conf/server.xml,会有一个 &lt;Connector&gt; 元素包含属性 port="8080" - 您可以将其更改为您想要的任何内容。

然而,如果有人要求在 443 上运行它,我猜他们真正想要的是 https?在这种情况下,请参阅http://tomcat.apache.org/tomcat-8.0-doc/ssl-howto.html 了解如何在 tomcat 上设置 ssl。

【讨论】:

    【解决方案3】:

    您可以在 server.xml 文件(位于 conf 目录中)中更改 Tomcat 的端口。要更改端口,您必须修改“连接器”元素的“端口”属性。

    如果您想在 linux 上运行 Tomcat 服务器并且您不能以特权用户身份运行它,您可以使用 iptables 将端口 443 重定向到 8080:iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 8080

    【讨论】:

    • Linux 解决方案并不理想,因为用户会在浏览器的地址字段中看到 8080 地址。我建议使用 Apache 的 AJP 连接器或 authbind。
    • 这不是“linux”的问题,@alexk
    • 根据我的经验并警告其他人:你必须小心这个预路由规则,因为你可能会遇到如下错误:error:1408F10B:SSLroutines:ssl3_get_record:wrong version number 因为 iptables 会在某个时候打破 SSL 握手(我在 tomcat 上遇到了这个问题,让我们在 EC2 服务器中加密)
    猜你喜欢
    • 2011-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多