tomcat连接器更改端口

Posted

技术标签:

【中文标题】tomcat连接器更改端口【英文标题】:tomcat connector change port 【发布时间】:2018-05-05 02:42:20 【问题描述】:

我正在 Spring Boot 中实现一个简单的“Hello World”。我正在关注教程SpringBoot HelloWorld

当我将 SpringbootHelloworldApplication.java 类作为“作为 Java 应用程序运行”运行时,出现错误:

***************************应用程序启动失败


说明:

配置为侦听端口 8080 的 Tomcat 连接器失败 开始。端口可能已在使用中,或者连接器可能已使用 配置错误。

行动:

验证连接器的配置,识别并停止任何进程 正在侦听端口 8080,或配置此应用程序以侦听 在另一个端口上。

我在服务器上双击了,它有这样的配置:

我没有使用 8080 端口,我应该在哪里更改默认端口?

server.xml 文件有:

  <Connector port="8085" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

【问题讨论】:

在 application.properties 文件中添加server.port=&lt;someotherportnumber&gt; @pvpkiran 请问找到那个文件的路径是什么 再次阅读您提供的链接。它应该在资源下 我添加了 server.port= 8086 。我再次收到错误配置为侦听端口 8086 的 Tomcat 连接器无法启动。该端口可能已在使用中,或者连接器可能配置错误。 【参考方案1】:

我假设您的应用程序看起来像这样:

@SpringBootApplication
public class Application 

    public static void main(String[] args) 
        SpringApplication.run(Application.class, args);
    

Spring Boot 运行嵌入式 Tomcat 服务器。当您运行 SpringbootHelloworldApplication.java 类时,它实际上启动了它自己的服务器。您根本不需要 Eclipse Tomcat 连接器。

您可能已经启动了应用程序的另一个实例。

尝试设置server.port=0。这将导致 Spring Boot 每次启动时使用一个随机的空闲端口。

【讨论】:

对,就是应用类。它有效,我没有收到任何错误。现在的问题是,我应该使用哪个端口来测试它?我试过 localhost:8080/welcome.html 。并显示“无法访问此站点 localhost 拒绝连接”。在 Eclipse 的控制台中,它说“Tomcat 在端口上启动:53620 (http)”但它没有工作“Whitelabel 错误页面” 返回白标错误的端口是正确的。现在这是一个单独的问题。 那么,我应该尝试使用哪个端口,因为使用 8080 不起作用 任何高于 1024 的空闲端口都可以。如何找到空闲端口超出了这个问题的范围。【参考方案2】:

是的,您应该尝试更改它,有时 http 端口可能已经被其他应用程序占用。更改 8006 - tomcat port , HTTP - 8086 , AJP - 8010 之类的内容,不要忘记使用新的 http 端口导航。

【讨论】:

目前我只是运行java类,项目没有添加到Tomcat服务器中。我尝试更改值,但仍然遇到相同的错误 如果您没有将项目添加到 tomcat 服务器中,则服务器没有运行您的项目。如果你想打开tomcat的管理web界面,那么尝试在服务器的server.xml中更改角色并打开它。 我按照教程进行操作,但他们没有提到该步骤。但是,我尝试在 Tomcat 的“添加和删除”选项中添加项目,但该项目未显示在列表中,因此无法添加。那么缺少什么? 您遇到的错误是什么,例如无法将您的项目添加到顶部?或者任何,而且我也做错了menton server.xml,它是tomcat-users.xml 我得到了一堆关于错误的信息,我会总结一下,希望对你有帮助【参考方案3】:

你可以做两件事之一

    在 application.properties 文件中添加 server.port=0,这将在您每次运行应用程序时随机化您的端口,但我再次想知道为什么要这样做:p

    您最后一个应用程序实例没有正确停止并保持端口繁忙。要解决此问题,在控制台的右上角您会看到一个红色按钮,单击此按钮以正确停止应用程序,您的问题是解决了。注意:关闭控制台不会释放应用程序正在运行的端口。美好的一天!

【讨论】:

【参考方案4】:

我认为,其他应用程序会使用您的 8080 端口号,只需在 application.properties 文件中更改您的端口号即可。

server.port = 0 

【讨论】:

以上是关于tomcat连接器更改端口的主要内容,如果未能解决你的问题,请参考以下文章

配置为侦听端口 8080 的 Tomcat 连接器失败

配置为侦听端口 80 的 Tomcat 连接器无法启动

tomcat安全优化

将tomcat HTTP连接器启动在80端口(jsvc使用详解)

如果连接器端口是 8081,如何从 apache tomcat 中的 URL 中删除端口号

https 后的 Spring Boot:配置为侦听端口 8444 的 Tomcat 连接器无法启动。