可以ping ec2服务器(ubuntu / apache),但不会从http请求获得响应

背景:

  • 操作系统:Ubuntu的
  • Web服务器:apache2

什么工作:

  • 我可以ping服务器的弹性IP(并接收响应)
  • 我可以SSH入服务器

什么不行:

  • 我无法从服务器获得任何types的http响应

预期的行为:

  • 当我去http://ec2-XXX-XX-XXX-XXX.compute-1.amazonaws.com/ ,它会服务我的网页,或者至less给我一个404,我可以debugging

实际行为:

  • 当我去http://ec2-XXX-XX-XXX-XXX.compute-1.amazonaws.com/时 ,它说“糟糕!Google Chrome无法连接到ec2-XXX-XX-XXX-XXX.compute- 1.amazonaws.com”。 它甚至不给我一个404。

咆哮:

很明显,服务器在那里,因为我可以ssh到这个确切的地址,我可以ping通确切的IP,并得到一个回应。 但是,当我在我的Web浏览器中确切的地址,就好像它从来没有把它送到服务器。 或者就好像亚马逊不会让HTTP请求一样,但是在我的安全组中,我清楚地指定了来自所有源的HTTP请求都被允许通过。 Apache肯定是在运行,我的文档根目录已经正确设置,我的错误和访问日志不给我任何东西。

在Amazon和服务器之间是否有任何types的login,或者在请求到达服务器的请求和Apache接收到的请求之间,这些请求会指定为什么它返回“找不到”而不是404。是否可以使我的Apache日志更加冗长?

提前致谢! 我花了几个小时在这….

如果连接被telnet输出拒绝,这意味着你连接到服务器上的一个封闭的端口。

你在netstat -lnp有一行代码:

 tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1662/apache2 

如果您的apache正在侦听不同的端口,则需要在URL中指定该端口,如: http://ec2-XXX...com:8080/如果端口是8080。