当前位置: 首页 > 知识库问答 >
问题:

spring boot应用程序实际运行在端口0上,而不是random

冀崇凛
2023-03-14
server.port=0

它应该被spring boot捕获并设置为随机端口。

相反,它实际上在端口0上启动它,甚至在spring日志中也是这样:

01/Mar/2019 12:50:43,600- TomcatEmbeddedServletContainer: Tomcat initialized with port(s): 0 (http)

Eureka将其视为“向上”服务,并提供到该服务的链接(localhost:0/info),单击它会给我的浏览器“err_address_invalid",因为它不是有效端口。

有没有什么设置可以防止随机性?如果是,如何取消设置?

编辑:任何新的引导应用程序server.port=0都是随机的,它只是不能用于现有的Spring Boot应用程序,因为它有很多依赖项

共有1个答案

陶瀚玥
2023-03-14

它实际上不是在端口0上启动它,而是在随机端口上启动它。在您的eureka服务器中,您会看到它位于端口0,但如果您将自己置于顶部而不单击,您会在浏览器栏中看到端口不同。

在日志中显示:

INFO  o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 0 (http)

但以后会对其进行更改:

INFO  o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 64039 (http) with context path ''
INFO  o.s.c.n.e.s.EurekaAutoServiceRegistration - Updating port to 64039
eureka:
  client:
    registerWithEureka: true
    fetchRegistry: true
    serviceUrl:
      defaultZone: http://localhost:portServer/eureka/
  instance:
    preferIpAddress: true
 类似资料:
  • 我是Java新手,正在尝试在NetBeans中运行Java awt/javax.swing应用程序。以下是github链接。 在我按下run之后,即使Netbeans一直在其窗口中显示,并且Java application图标下出现了一个圆点,也没有真正发生任何事情(实际上没有打开Java application窗口,我知道情况是这样的,因为当我用鼠标单击Java application图标时,没

  • 我有一个JavaFX应用程序,它调用一些JNI代码,使用预加载程序jar,并使用JDK1.7编译。现在,当我使用JRE7在另一台计算机上运行jar时,通过: 双击jar:它启动,但无法加载包含库的JNI代码,因此被卡住。 有人能告诉我这三种情况有什么不同吗?

  • 我试图在SpringMVC中运行SpringBoot应用程序,在SpringMVCPOM中添加SpringBoot应用程序依赖项,并扫描SpringBoot包,但我面临以下问题

  • 问题内容: 我无法在端口80上启动应用程序。 我已经在本地计算机(使用我的IDE和本地服务器)上尝试过,没有运气。 我检查了其他类似的帖子,并确保我在具有root用户的服务器上运行jar。 这是错误: 问题答案: 在Linux上,只能由root用户打开低于1024的端口,因此默认情况下限制端口80 如果要在80端口上发布应用,则需要将请求从80端口重定向到要运行springapp(例如8080)端

  • 问题内容: 我有多个Node应用程序(在Express框架上构建)。 现在,我将它们这样放置- 现在,我想在同一端口(例如8080)上运行这3个应用程序。那可能吗 ? 需要注意的一件事是,每个应用都有类似的通用路线- 基本上,我想这样做,就像您可以使用Apache / PHP设置一样。 因此,当您拥有LAMP堆栈时- 您可以通过-作为其他应用轻松访问它们- 问题答案: 您可以使用:

  • 这是我的节点文件 我在上有HTML 和上的节点应用程序 我也转发了3000端口到80; 我想在这个服务器上的一个不同的端口上运行多个应用程序。 我应该为其他应用程序配置什么。