如何在 Amazon EC2 实例上打开侦听端口?

bbr*_*ges 7 web-development webserver ports amazon-ec2

我正在使用带有 Ubuntu 11.04 的 Amazon EC2 微型实例(Canonical 的官方 AMI)。我为此实例创建了一个新的安全组:

Inbound:

22 (SSH)    0.0.0.0/0
80 (HTTP)   0.0.0.0/0
443 (HTTPS) 0.0.0.0/0
3306 (MYSQL)    0.0.0.0/0
8080 (HTTP*)    0.0.0.0/0
27017   0.0.0.0/0
27018   0.0.0.0/0
27019   0.0.0.0/0
28017   0.0.0.0/0
Run Code Online (Sandbox Code Playgroud)

但是当我在 8080 上启动 Web 服务器并尝试http://ec2-ip-address:8080/在浏览器中打开时,它说

找不到服务器

...使用标准的 Google Chrome 页面。

netstat -anltp | grep "LISTEN" 
Run Code Online (Sandbox Code Playgroud)

说我唯一监听的端口是 22。

如何打开列出的端口,以便启动我的 Web 项目?

编辑:已找到解决方案。您只需要在 0.0.0.0 IP 地址启动服务器,而不是 127.0.0.1 或 localhost。

小智 7

这里有几种可能性。第一种可能性是您尚未将该端口设置为 Apache 中的侦听器,您可以通过添加类似的行来执行此操作

Listen 8080
Run Code Online (Sandbox Code Playgroud)

进入你的Apache配置文件。

第二种可能是UFW正在运行(ubuntu防火墙),你可以通过运行来禁用它

sudo ufw disable
Run Code Online (Sandbox Code Playgroud)

或通过添加端口

sudo ufw allow 8080
Run Code Online (Sandbox Code Playgroud)

最后一种可能性是 IPTables 阻止了它,您需要查看

sudo iptables -L
Run Code Online (Sandbox Code Playgroud)

获取规则列表并从那里更改它们。