Apache 服务器没有响应。它只是加载然后给出超时

Apache 服务器没有响应。它只是加载然后给出超时

我有一台 apache2 服务器,一直想让所有人都能访问它,但做不到。输出如下:

$ netstat -plant | grep apache
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN    15647/apache2

之前是:::80,但是在看到 serverfualt.com 上的另一篇帖子后我将其更改了

$ ufw status
Status: inactive
$ service apache2 status
● apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-08-28 18:33:05 UTC; 16min ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 15625 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 15647 (apache2)
      Tasks: 55 (limit: 4617)
     Memory: 12.5M
     CGroup: /system.slice/apache2.service
             ├─15647 /usr/sbin/apache2 -k start
             ├─15648 /usr/sbin/apache2 -k start
             └─15649 /usr/sbin/apache2 -k start

Aug 28 18:33:05 localhost systemd[1]: Starting The Apache HTTP Server...
Aug 28 18:33:05 localhost systemd[1]: Started The Apache HTTP Server.

当我尝试从浏览器访问它时,它只是继续加载并且在某个时间点之后出现site takes too long to respond错误。

请帮我解决。另外,如果需要任何其他输出,请通知我。

答案1

您已经检查过该服务是否正在运行。

尝试从服务器本身访问您的服务器,以检查服务是否可访问。一个合适的检查命令是 telnet 或 curl,在运行服务器的同一台计算机上执行:

$ telnet localhost 80
$ curl -v http://localhost

如果一切正常,接下来检查服务器上的防火墙是否打开了端口 80。提示:ufw这只是一种防火墙,也可能有其他程序。还请检查其他防火墙(例如您的服务器提供商的防火墙)是否允许访问端口 80。

下一步是尝试相同的操作,但使用服务器的公共 IP。要了解服务器的公共 IP,可以使用以下命令:echo $(curl -s ifconfig.me)。另一种方法是在 的输出中搜索它ip a

最后,您应该检查 DNS,例如,您的域名是否指向正确的 IP。

相关内容