禁用防火墙然后 apache 停止

禁用防火墙然后 apache 停止

我遇到了一些与网站服务器无关的问题,因此我停止了 iptables。从那时起,apache 就不再提供页面服务了。我只收到错误“无法访问此站点。my.site.org 响应时间太长”。我尝试重新安装 apache、禁用 php、更改 www 文件的所有者/组以及其他十几件事。没有服务器端错误,而且看起来 apache 正在运行,如何才能让 apache 再次提供页面服务,而无需重新启动 iptables,因为这会破坏服务器的其余部分?

编辑:

不会让我复制前两个命令但可以复制第三个命令:

iptables -L -n

iptables -t nat -L -n

root@mineos ~# lsof -i
(LISTEN)
apache2     649          root    4u  IPv6   11604      0t0  TCP *:http (LISTEN)
apache2    9079      www-data    4u  IPv6   11604      0t0  TCP *:http (LISTEN)
apache2    9080      www-data    4u  IPv6   11604      0t0  TCP *:http (LISTEN)
apache2    9081      www-data    4u  IPv6   11604      0t0  TCP *:http (LISTEN)
apache2    9082      www-data    4u  IPv6   11604      0t0  TCP *:http (LISTEN)
apache2    9083      www-data    4u  IPv6   11604      0t0  TCP *:http (LISTEN)

我尝试了所有这些端口,但所有端口都拒绝连接。

答案1

您能向我们展示一下 apache 工作时所拥有的 iptables 规则吗?

$ iptables -L -n
and
$ iptables -t nat -L -n

还要检查 apache 正在监听的地址和端口。

这是一个大胆的猜测,但可能设置了一条 iptables 规则,将外部请求转发到您服务器上的端口 80,该端口是 apache 实际监听的端口。停止 iptables 会禁用该规则,因此您的请求不会得到答复。

编辑:

Apache 确实正在监听端口 80,但是......

我从你的 iptables 规则中看到,你的 INPUT 链的默认策略是DROP。如果你通过简单地刷新所有链来“停止” iptables,那么你的机器将不接受任何内容。

防火墙停止后,尝试以下操作:

$ iptables -P INPUT ACCEPT

这将真正消除任何过滤。

相关内容