我的免费套餐EC2包含我的Scala应用程序。该应用程序在端口8080上运行,但我已声明从端口80重定向到端口8080.EC2的安全组包括端口8080和80到所有IP的入站规则。尽管如此,我无法通过浏览器访问该服务。
Outputs from netstat and iptables
浏览器返回 ec2-35-157-211-142.eu-central-1.compute.amazonaws.com拒绝连接。
如果有人能帮助我,我真的很感激。
感谢。
答案 0 :(得分:0)
如果您能够在本地连接但不能远程连接,则可能是您没有将服务器绑定到外部接口。要绑定到所有接口,只需使host =“0.0.0.0”类似于以下内容:
对于喷雾:
IO(Http) ! Http.Bind(service, "0.0.0.0", port = 8080)
对于Akka HTTP:
Http().bindAndHandle(route, "0.0.0.0", 8080)
答案 1 :(得分:0)
确保您的EC2实例位于公共子网中。如果没有问题,那么请确保他们分配了公共IP,否则他们将无法从互联网上访问。
如果他们有公共IP,那么您应该检查安全组是否有出站规则允许所有IP的端口(或者至少是您希望允许连接的IP)。如果您有入站规则但没有出站规则,则您的实例无法提供流量,因此请以与入站规则相同的方式定义出站规则。
如果已正确设置,请确保网络ACL允许相同端口的入站/出站规则(当然:它不会拒绝它们)。
我希望这会有所帮助:)。