端口80:连接被拒绝。 如何解决在Mac OSX?

我注意到两台Mac上的Apache虚拟主机存在一些问题,这些问题与其他方式(httpd.conf,vhosts,hosts等)有相同的设置。在一台Mac上,虚拟主机在没有故障的情况下在另一台Mac上运行,我在端口80上连接被拒绝。

这似乎不是与Apacheconfiguration的问题,我认为,但与端口有关。

也就是说,无法为80上的虚拟主机test.dev服务的计算机在端口扫描上显示了这一点:

Сканированиепортоввыполняется…

Port Scanning host: 127.0.0.1 Open TCP Port: 88 kerberos Open TCP Port: 445 microsoft-ds Open TCP Port: 548 afpovertcp Open TCP Port: 631 ipp Сканирование портов завершено… 

服务test.dev的机器显示这个:

 Port Scanning host: 127.0.0.1 Open TCP Port: 22 ssh Open TCP Port: 53 domain Open TCP Port: 80 http Open TCP Port: 88 kerberos Open TCP Port: 445 microsoft-ds Open TCP Port: 548 afpovertcp Open TCP Port: 631 ipp Сканирование портов завершено… 

所以在“好”机器上,端口80被列出,在“坏”机器上它不是。

在这两台机器上,我有apache监听*:80等,正确设置虚拟主机,在主机文件中的一个适当的条目等两台Macs运行埃尔卡皮坦,是在同一个networking等

而在良好的mac,test.dev服务,在坏mac上,我得到这个:

 ↪ curl -I -L test.dev 15:51:01 curl: (7) Failed to connect to test.dev port 80: Connection refused 

我有点不知所措,因为我不知道如何解决这个问题。 为什么端口80没有显示在恶意Mac的端口扫描(使用networking实用程序),但sudo lsof -i -P | grep -i "80" sudo lsof -i -P | grep -i "80"给了我:

 httpd 4482 root 5u IPv6 0xfe89d5ee2c7da24b 0t0 TCP *:80 (LISTEN) httpd 4484 daemon 5u IPv6 0xfe89d5ee2c7da24b 0t0 TCP *:80 (LISTEN) httpd 4485 daemon 5u IPv6 0xfe89d5ee2c7da24b 0t0 TCP *:80 (LISTEN) httpd 4486 daemon 5u IPv6 0xfe89d5ee2c7da24b 0t0 TCP *:80 (LISTEN) httpd 4487 daemon 5u IPv6 0xfe89d5ee2c7da24b 0t0 TCP *:80 (LISTEN) httpd 4488 daemon 5u IPv6 0xfe89d5ee2c7da24b 0t0 TCP *:80 (LISTEN) 

提前谢谢了。

一切顺利,Tench

编辑:我被要求certificate为什么这不是一个重复的问题关于连接被拒绝的更一般的问题。 这不是因为我的问题是特定于Mac OSX的,而且对我而言(见下文)的解决scheme需要编辑pf.conf并使用pfctl,这在所谓的重复问题中是没有提及的。

为了确保所有接口上的TCP端口都是开放的,我添加了

 pass in proto tcp from any to any port 80 

/etc/pf.conf 。 重新加载pfctl并没有完全做到这一点,但重启了。 现在,端口在端口扫描中显示为打开,并且我的虚拟主机按照他们的要求被服务。