Springboot在yml文件中修改端口号无效的解决方案

1,013 阅读2分钟

Springboot在yml文件中修改端口号无效的解决方案

众所周知,Springboot是一个轻量级Web开发工具。里面内嵌了tomcat,所以我们不需要安装tomcat了。但是多个项目放在一起的时候,总不能都访问8080端口吧。所以我们需要修改默认端口。 默认是8080,不需要配置,但是如果有需求,需要在application.yml中指定,代码如下,这里我修改成了8081

server:
  port: 8081

无效原因一:写法问题

写法问题 但是注意哈,好多人配置了没有用,百度上也有好多方法,什么修改idea的,好像是不需要的。这里的主要问题是写错了,代码最好复制。如果自己手写,一般会出错的。看看下面两张图。差距就是8081与前面的冒号之间还有一个空格,要是没有的话,就是上图,这样是无效的。

补充:server顶格 port与端口号之间有空格,8081变颜色证明成功!!

  • 错误示范:
在这里插入图片描述
  • 正确示范:

    在这里插入图片描述

无效原因二:放置在linux上无效,没有配置address。

  • 首先,我们需要给linux服务器的防火墙开启端口对吧。可以参考我之前的文章:。

  • 开启了防火墙端口以后,发现还是访问不到,我们可以通过文章中的netstat -ntlp查看防火墙中端口的信息。下面是错误示范。 在这里插入图片描述 注意看红色的位置,8081的跟8080的不一样。这样就导致了"监听内网,而不是公网"。这个具体的我也不是很明白,但是我知道怎么修改。问题就是8080端口,你在写项目的时候,很多东西都是默认的,而且你也不需要重新指定。而这个项目你修改了端口,但是里面还有一个address,你并没有修改,他就是指定监听的。所以application.yml中再指定一下address到公网即可。代码如下

    server:
    address: 0.0.0.0
    port: 8081
    
  • 这样重新部署项目,然后netstat -ntlp查看防火墙中端口的信息如下,并且也可以访问了。 在这里插入图片描述