【问题标题】:Can't access aws public ip via deploy or ping无法通过部署或 ping 访问 aws 公共 IP
【发布时间】:2016-10-21 18:38:29
【问题描述】:

通过passengernginx 部署我的rails 应用程序后,我想对其进行测试。 于是我在浏览器中输入公网ip,加上port,好像不行。

另外,我也无法 ping 公网 IP。(请求超时)

我已尝试在 Security Group > Inbond 中添加新角色。我在类型中选择http,在源选项中选择anywhere

更新

这是我的安全组设置

【问题讨论】:

  • 我认为这与 Rails 没有任何关系。如果您甚至无法 ping 公共 IP,那么您的 aws 设置很可能是错误的。
  • 您是否在实例本身的防火墙中打开了该端口?

标签: ruby-on-rails amazon-web-services nginx amazon-ec2


【解决方案1】:

除了安全组之外,为了能够通过公共 IP 地址访问实例,您需要确保:

  1. 该实例部署在附加了Internet Gateway 的VPC 中。
  2. 您在其中部署实例的子网有一个到 Internet 网关的 route
  3. 与子网关联的network ACL 不会阻止进入子网的流量。
  4. 该实例实际上有一个自动分配给它的公共 IP 或与之关联的 elastic IP(我假设是这种情况,因为您提到尝试 ping 它)。
  5. 如果做不到这一点,是时候检查实例上的防火墙了,正如上面的评论中提到的 (注意:大多数官方 AWS AMI 没有设置防火墙规则,因为它们通常使用上述 AWS VPC 功能为了安全)

这当然是假设您在 VPC 中运行,而不是 EC2-Classic(新 AWS 账户暂时无法使用它)。

【讨论】:

  • 是的,我想我使用 VPC,因为我使用免费层。我尝试了所有方法,但仍然失败。我只有一台机器,我应该使用elastic IP吗?
  • 我发现我错误地设置了安全组。我应该将其设置为 8080 端口。
猜你喜欢
  • 1970-01-01
  • 2021-07-06
  • 2020-11-03
  • 1970-01-01
  • 2020-07-09
  • 1970-01-01
  • 2016-03-10
  • 1970-01-01
  • 2021-08-10
相关资源
最近更新 更多