Windows 7上的Apache服务器开放端口?


20

我已经在Windows 7上安装了Apache 2.2.14,并且可以使用http://localhost和两者查看我的网页,http://127.0.0.1但是当我尝试从同一路由器上的另一台计算机访问服务器时,它将失败。当我使用映射的DynDNS地址时,它也会失败。

在升级到Windows 7之前,这在Windows XP下可以正常工作。

我怀疑问题出在端口80未被打开以供外部访问计算机。

有谁知道如何在Windows防火墙中打开该端口,或者是否有其他东西被锁定以及如何解锁?

Answers:


34

要在Windows防火墙中为端口80添加规则,请执行以下操作:

  • 转到控制面板并启动“ Windows防火墙”
  • 转到“高级设置”
  • 在左侧窗格中选择“入站规则”
  • 在右窗格中选择“新规则”
  • 在“新建入站规则向导”中,选择“端口”作为规则类型,然后单击“下一步”。
  • 选择“ TCP并将“ 80”(以及您要打开的任何其他端口)放入“特定本地端口”,然后单击“下一步”
  • 选择“允许连接”,然后单击“下一步”
  • 选择规则应适用的网络位置(如果不确定,请选择所有位置),然后单击“下一步”
  • 提供名称和可选描述

那应该做。


2
您可能会发现防火墙设置下已经有一个“ Apache”入站规则。如果检查此规则,将在“常规”选项卡下找到一些设置,其中之一是“操作”。有两个选项-“允许连接”和“如果安全则允许连接”。您可以酌情选择其中一个选项,但是我建议您阅读并理解后者的“自定义”选项。
亚伦·牛顿

提示:您将能够访问该端口,但是您仍然可能无法ping ip!
fzyzcjy

3

Windows 7防火墙似乎担心使用80端口。

如果以这种方式配置,它将打开这些端口:

Apache服务器→UDP→所有端口。
Apache服务器→TCP→所有端口。

这很不好,因为Apache通常使用特定的端口(我的意思是80,有些使用8080和443),但是我没有找到其他方法来使Apache防火墙规则起作用。


2

听起来您需要向Windows防火墙添加一个例外(端口80)。

我确信这可以通过打开防火墙控制面板并单击一下来实现。在XP中,至少相当简单。

问题也可能是apache仅配置为在回送接口上侦听。您可以通过运行netstat或尝试访问计算机的其他地址(例如http://192.168.1.101/)来进行测试


2

我只是在工作。我为Windows防火墙上的端口80创建了例外规则。我在笔记本电脑上运行Windows 7,在Mac上运行OSX Leopard。单独的例外并不能解决问题。然后,我关闭了防火墙,并能够从Mac连接到笔记本电脑上的apache。解决问题的真正方法是在控制面板>网络和共享中心中。我更改了活动网络的设置,并将其设置为家庭网络。如果检查Win防火墙,则应该看到已连接家庭网络(专用)


+1,为了使规则生效,我还必须为当前网络选择一个家庭组。谢谢@ricardo。
rishimaharaj 2014年

1

尝试打开路由器上与计算机之间的端口,并查看Windows自己的防火墙。

请记住,当您重新安装Windows时,可能有不同的DHCP租约和不同的IP地址,因此路由器可能不再正确转发它。

最重要的是,您的路由器需要支持“ Nat Loopback”,否则您将完全无法连接,但是我认为它支持它,就像您之前所说的那样。要对此进行检查,我强烈建议您使用Hide My AssProxify


>您可能使用了其他IP地址,因此路由器可能不再正确转发它。 同意!我正在“使”我的WordPress安装“可移植”,因此我可以轻松地从任何地方托管它。我让它在本地运行,但是它被世界屏蔽了。Windows防火墙中已经存在一个例外,因为在提示我时我说允许,所以我检查了路由器,果然将其设置为将端口80转发到桌面IP。当然,将其更改为笔记本电脑是不好的。我最终分配了端口触发,现在可以在任何已连接的系统上使用。
Synetech 2012年


0

看来这是Windows 7防火墙的问题。当我关闭防火墙时,它可以正常工作。现在,我只需要弄清楚如何激活防火墙,但允许端口80连接。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.