无法从同一 LAN 的另一台计算机访问 CentOS 服务器上的 Apache HTTP

use*_*853 1 networking linux centos apache-http-server wireless-networking

我在 CentOS 7 上。我启动了 Apache HTTP 服务器。我可以通过在本地计算机上输入 IP 地址(在本例中为 192.168.1.147)来查看索引页。

\n\n

如果我在同一无线网络上的另一台计算机 (Windows 10) 上尝试此操作,我会得到以下信息:

\n\n
This site can\xe2\x80\x99t be reached\n192.168.1.147 took too long to respond.\n
Run Code Online (Sandbox Code Playgroud)\n\n

我无法远程登录到该计算机上的端口 80

\n\n
Microsoft Telnet> open 192.168.1.147 80\nConnecting To 192.168.1.147...Could not open connection to the host, on port 80: Connect failed\n
Run Code Online (Sandbox Code Playgroud)\n\n

但是,我可以从另一台机器通过 ssh 连接到该 IP 地址。

\n\n

我尝试将以下内容放入 httpd.conf 中

\n\n
Listen 192.168.1.147:80\n
Run Code Online (Sandbox Code Playgroud)\n\n

那也不起作用。我尝试禁用/停止firewalld但无济于事。

\n\n

似乎什么都不起作用。由于端口 22 上的 ssh 可以访问,我认为对端口 80 的访问被阻止了。

\n\n

知道我还能尝试什么吗?

\n

use*_*853 5

最后,当我执行以下操作时,它起作用了

sudo firewall-cmd --add-service=http --permanent
Run Code Online (Sandbox Code Playgroud)

禁用/停止“firewalld”似乎没有帮助,或者我可能没有正确完成它。

sudo firewall-cmd --list-all
Run Code Online (Sandbox Code Playgroud)

给了我以下内容:

public (active)
  target: default
  icmp-block-inversion: no
  interfaces: wlp2s0
  sources:
  services: dhcpv6-client http ssh
  ports:
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:
Run Code Online (Sandbox Code Playgroud)

在我运行该命令之前,http 未列出。

无需更改 httpd.conf 文件

要使其同时适用于 http 和 https,可以运行以下命令

sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-service=https --permanent
sudo firewall-cmd --reload
Run Code Online (Sandbox Code Playgroud)