【发布时间】:2016-02-03 01:52:15
【问题描述】:
我正在向我的 EC2 实例发出 GET 请求,但收到以下错误:
80: Connection refused
这些是我的实例的安全规则:
Ports Protocol Source launch-wizard-1
80 tcp 0.0.0.0/0 ✔
22 tcp 177.32.53.207/32 ✔
这些规则有什么问题?为什么我无法访问 80 端口?
编辑 I attached my apache conf file (/etc/apache2/apache2.conf) 在这个网址中,因为它太大了,无法在此处发布所有代码。
EDIT2 当我运行 netstat -ntlp | grep 听 我明白了:
(No info could be read for "-p": geteuid()=1000 but you should be root.)
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN -
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN -
tcp6 0 0 :::80 :::* LISTEN -
tcp6 0 0 :::22 :::* LISTEN
【问题讨论】:
-
您的实例上是否有软件在端口 80 上提供响应(例如 Web 服务器)?它在运行吗?您在错误日志中看到任何内容吗?
-
除了 Robbie 所说的,确保在服务器上运行的任何应用程序监听端口 80 都绑定了正确的接口/IP。如果它只监听 localhost 或非公共 IP 地址,它不会响应公共 IP 地址。
-
@RobbieAverill 是的,我有 apache。但是我检查了 var/log/apache2/error.log 上的日志,我没有看到与端口相关的任何内容。
-
@Brooks 我怎样才能用 apache 做到这一点?
-
Apache 的哪个版本?检查 conf 文件,或者将您的 conf 文件粘贴到您的问题中。还要确保 apache 实际运行(在 linux 中,运行 'sudo service apache2 status' - 假设 apache2)。
标签: apache amazon-web-services amazon-ec2