无法通过公共IP访问EC2实例上的站点

我一直在试用EC2几天,并且一直在反对我的头,甚至无法访问我托管的示例网站。 该堆栈是带有Thin和Nginx的Rails 3.1.3。

我尝试了几种不同的配置,最后运行了Nginx自动安装脚本,当我做一个卷曲时,它会返回一个网页http://ec2-107-20-143-179.compute-1.amazonaws.com/ 。 但是,当我将浏览器指向该页面时,它会在无法找到该页面之前永久挂起。

我已分配弹性IP地址,并且已通过端口80启用HTTP访问。

我对系统管理员方面的经验并不多,而且我基本上在这一点上难倒了。 任何建议将不胜感激。


你是否启用了http端口到所有ips? 这将通过以下方式完成:

EC2 - >安全组 - >默认(或您自己的) - >入站

然后为HTTP创建新规则并将其作为源,您应该指定:0.0.0.0/0

这应该做到这一点。


认为AWS UI可能已经更新,但基于Deleteman的答案

  • 登录到EC2仪表板
  • 实例>实例
  • 操作下拉菜单>网络>更改安全组
  • 你可能会看到你只有启动向导-1允许我只允许在端口22上进行SSH访问
  • 正如Deleteman所提到的,您可能需要改变您的安全组...

  • 登录到EC2仪表板
  • 网络和安全>安全组
  • 删除搜索框中可能显示所有组的所有过滤器
  • 就我个人而言,我编辑了默认的VPC安全组,因为这是一个沙箱,我想你会想为你的项目创建一个安全组
  • 选择安全组复选框,选择操作下拉列表并单击“编辑入站规则”,我使用以下入站规则来确保它全部正常工作
  • 规则

  • 当您重新访问实例>实例>描述时,您应该看到安全组和规则
  • 在这里输入图像描述

  • 一旦你开心,它的工作,我可能会用HTTP和HTTPS替换所有的流量,如果这是所有需要的

  • 我之前在这里寻找解决我遇到的类似问题的解决方案。 事实证明,在我的情况下,除EC2安全组之外,EC2实例还有其自己的防火墙。 命令'system-config-firewall'让我进入打开端口。 默认情况下,端口80(HTTP)和3306(MySQL)未打开。 22(SSH)开放。 我也必须做'yum install system-config-firewall'。

    总而言之,我的解决方案是:

    > yum install system-config-firewall
    > system-config-firewall
    
    链接地址: http://www.djcxy.com/p/5555.html

    上一篇: Can't access site on EC2 instance via public ip

    下一篇: Nginx 403 forbidden for all files