我在 ec2 安全组上添加了端口 8080,但 8080 不在监听列表中
Posted
技术标签:
【中文标题】我在 ec2 安全组上添加了端口 8080,但 8080 不在监听列表中【英文标题】:I added port 8080 on ec2 security group but 8080 is not on listening list 【发布时间】:2021-04-15 23:51:18 【问题描述】:网页正在本地主机上加载。但不是公共IP。我得到连接被拒绝。所以我检查了端口正在监听,但它没有。我该怎么办?
Add 8080 port Inbound rules
[ec2-user@springboot-webservice ~]$ netstat -ntl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:36145 0.0.0.0:* LISTEN
tcp 0 0 :::22 :::* LISTEN
tcp 0 0 :::43675 :::* LISTEN
tcp 0 0 :::111 :::* LISTEN
【问题讨论】:
您的应用程序甚至在实例上工作吗?你能验证一下吗? 老实说,我不确定。当我访问 localhost:8080 时,我可以访问网页并登录。但无法发布.. 当您的意思是“本地主机”时,您的意思是在 ec2 实例本身上?当你 ssh 进入它时,你可以 curl 它curl localhost:8080
?
当我 curl localhost 或主机名时,它也被拒绝
所以你的应用程序没有在实例上运行。你必须让它运行。
【参考方案1】:
您确定您的应用程序正在运行吗? 如果没有,请转到您的应用程序目录并取消运行它。 摇篮
./gradlew bootRun
Maven
./mvnw spring-boot:run
您为应用程序指定的运行端口。如果您不指定任何内容,默认情况下它将在端口 8080 上运行。 如果您愿意,可以在 application.properties 中添加 server.port 以更改您的端口。
源 主要 资源 application.properties#application.properties 内容
server.port=8080 #your port
#server.port=80 another port to test
如果您的依赖项中有 Spring Security,那么这就是登录页面的原因。
查看What is username and password when starting Spring Boot with Tomcat?
如果您只能在 localhost 上看到您的应用程序,但不能将您的应用程序公开给全世界。 您的 EC2 实例位于私有子网还是公有子网中? 只有在公共子网上才能看到您的应用程序。默认子网始终是公共子网。
也许本教程可以帮助您检查是否缺少任何步骤。 https://www.javacodegeeks.com/2019/10/deploy-spring-boot-application-aws-ec2-instance.html
【讨论】:
以上是关于我在 ec2 安全组上添加了端口 8080,但 8080 不在监听列表中的主要内容,如果未能解决你的问题,请参考以下文章