我有一台Windows 7机器,可提供很少(但很重要!)页面。我有一个例外,它允许任何流量进入端口80 *,但是Apache 2.2仍然无法提供页面(尽管我可以从计算机本身看到它们)。但是,如果完全禁用Windows防火墙,则可以ping通此框并加载页面。
为了使Apache能够完成其工作,我还需要配置什么?
*实际上,即使我将例外更改为“所有端口”而不是80,也会发生同样的事情。
我有一台Windows 7机器,可提供很少(但很重要!)页面。我有一个例外,它允许任何流量进入端口80 *,但是Apache 2.2仍然无法提供页面(尽管我可以从计算机本身看到它们)。但是,如果完全禁用Windows防火墙,则可以ping通此框并加载页面。
为了使Apache能够完成其工作,我还需要配置什么?
*实际上,即使我将例外更改为“所有端口”而不是80,也会发生同样的事情。
Answers:
不管防火墙上的端口80是否打开,并不意味着如果Apache运行正常,ping命令将开始工作。Ping使用ICMP,它是它自己的协议,需要在防火墙上打开该协议才能从您的计算机接收ping答复。因此,不要指望ping来验证您的apache配置/防火墙配置是否正常工作。
为了响应您的tcp 80防火墙规则,请转到规则的属性,并检查是否选中了所有3个复选框(“域”,“私有”,“公共”),如果未选中,则将其选中。
以下是具有在Windows 7上打开端口80所需采取的确切步骤的HOWTO:链接
更新:
另请检查您是否没有使用Windows防火墙阻止apache进程本身。
1.转到控制面板
。2.选择系统和安全性
。3.在Windows防火墙部分中,选择允许程序通过Windows防火墙。
4.取消选中应用程序名称左侧的框将禁止它访问网络资源,而选中它则允许访问。
如果未列出Apache,则可以单击“ 允许其他程序...”按钮添加它,然后选中“家庭/工作”和“公共”下的框。
Inbound Rules
在左窗格中创建规则吗?
如果禁用防火墙可以完全解决问题,但是您的例外规则不能解决问题,那么我敢说您的例外是错误的。
根据Microsoft的说法,排查防火墙问题的第一步是验证活动配置文件(公共,私有或域)。
解决Windows防火墙问题的第一步是验证哪个配置文件处于活动状态。具有高级安全性的Windows防火墙是一种可识别网络位置的应用程序。随着计算机连接到的网络位置发生变化,Windows防火墙配置文件也会发生变化。这些配置文件描述了Windows防火墙设置和规则,这些设置和规则根据活动网络连接的网络位置类型而应用。
因此,一种可能是您制定了正确的规则,但使用了错误的配置文件。
希望能有所帮助。
您的httpd.conf可能只限于本地主机或本地子网上的客户端。
在您的httpd.conf中设置:
<Directory />
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
可能还有这个:
<Directory "E:/Apache/htdocs">
Options Indexes FollowSymLinks
AllowOverride None
Allow from all
</Directory>
未经您的同意,您的防火墙不允许任何新的连接共享信息。唯一要做的就是同意您的防火墙。
而已。现在,连接在同一网络上的另一台PC和移动设备可以访问本地站点。让我们开始开发。