Ubuntu

Apache 伺服器沒有響應。它只是載入然後給出超時

  • August 29, 2021

我有一個 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出現錯誤。

請幫我解決它。另外,如果需要任何其他輸出,請通知我。

您已經檢查了該服務是否正在執行。

嘗試從伺服器本身訪問您的伺服器,以檢查該服務是否可訪問。一個適當的檢查命令是 telnet 或 curl,在伺服器執行的同一台機器上執行:

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

如果一切正常,接下來是檢查伺服器上的防火牆是否打開了 80 埠。提示:ufw只是防火牆的一種,可能還有其他程序。還請檢查另一個防火牆(例如您的伺服器提供商之一)是否允許訪問埠 80。

下一步是嘗試相同的方法,但使用伺服器的公共 IP。知道您的伺服器公共 IP 的命令是echo $(curl -s ifconfig.me). 另一種方法是在 的輸出中搜尋它ip a

最後,您應該檢查 DNS,例如。如果您的域名指向正確的 IP。

引用自:https://serverfault.com/questions/1075910