在浏览器中排查AWS EC2站点连接超时

我是AWS的新手,正在使用免费层来testing个人Django项目。 但是,当我尝试访问IP地址时,浏览器发生超时错误。 该站点在本地工作,超时错误显示通过无线或有线连接访问。

我设置网站的方式是使用Bitnami DjangoStack,服务器通过./manage.py runserver 0.0.0.0:8080运行。我还将可用的IP地址绑定到现有的公有DNS名称。 TCP端口80作为HTTP打开,源为0.0.0.0/0。

我执行netstat -aon并得到输出

 tcp 0 0 10.4.89.232:22 141.114.79.244:38928 ESTABLISHED keepalive (3582.28/0/0) tcp 0 272 10.4.89.232:22 141.114.79.244:40393 ESTABLISHED on (0.21/0/0) 

这两个地址来自我的站点访问请求,我使用的IP地址和端口80和8080,但超时仍然发生。

源代码和数据库是通过

  • 克隆与网站源代码的git存储库
  • 将数据库导入到mysql数据库
  • 修改settings.py以反映新的数据库凭证
  • 在服务器shell中执行runserver命令

服务器日志中没有显示错误。 nmap产生

 nmap -P0 -p80 54.2**.***.* Starting Nmap 5.21 ( http://nmap.org ) at 2013-08-27 10:32 EDT Nmap scan report for ec2-54-2**-***-*.compute-1.amazonaws.com (54.2**.***.*) Host is up. PORT STATE SERVICE 80/tcp filtered http Nmap done: 1 IP address (1 host up) scanned in 2.08 seconds 

你说你正在使用AWS …在这种情况下,安全组是“陷阱”。 configuration安全组以允许您想要的端口和它应该工作。

根据此处的 Bitnami Django堆栈文档,如果使用其控制脚本ctl.sh启动服务器,则该应用程序将在端口8080上运行。如果使用runserver ,则应用程序默认在端口8000上运行。

访问应用程序的最简单方法是在安全组上打开端口8080(如果您使用runserver则为8000),并以http://ec2-54-2**-***-*.compute-1.amazonaws.com:8080

其他方法包括将Apacheconfiguration更改为在端口80上运行,或运行HAProxy或Nginx以将请求反向代理到此服务器。