Centos

無法遠端連接到 Apache

  • January 3, 2018

我在我的開發伺服器上創建了 Apache 的 httpd 程序的一個新實例,用於測試目的。這台機器正在執行 Centos 6.8。

我可以通過 curl 在本地連接到 Web 伺服器,但無法從外部連接。

# curl 127.0.0.1:1500
   {"message":"Hello World!"}

我已經更新了我的 iptables 以允許通過埠 1500 建立新的 TCP 連接 - 目前我的規則如下:

# iptables -nL
   Chain INPUT (policy ACCEPT)
   target     prot opt source               destination
   ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:1500

   Chain FORWARD (policy ACCEPT)
   target     prot opt source               destination

   Chain OUTPUT (policy ACCEPT)
   target     prot opt source               destination

我也嘗試過允許通過 SELinux 進行訪問:

# semanage port -l | grep 1500
   http_port_t                    tcp      1500, 8080, 80, 81, 443, 488, 8008, 8009, 8443, 9000

非常感謝調試此問題的任何幫助,因為我不確定還有什麼可以嘗試的。

根據西蒙的評論編輯:

# netstat -nlp | grep 1500
   tcp        0      0 :::1500                     :::*                       LISTEN      23117/httpd_dev

似乎(從評論中)上游 GCP 防火牆阻止了訪問。


檢查並查看您的 httpd 伺服器是否正在偵聽您的外部 IP 地址,例如

netstat -tnlp | grep :1500

應該給出類似的輸出

tcp      0    0 :::1500                :::*                  LISTEN  2295/httpd

如果它正在監聽所有地址如果它只監聽 127.0.0.1 你會看到類似

tcp      0    0 127.0.0.1:25           0.0.0.0:*             LISTEN      2297/httpd

並且您應該適當地調整 httpd 配置中的 listen 指令。

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