通过WAMP阻止了所有localhost页面?

时间:2011-06-09 16:15:57

标签: php html wamp firewall windows-firewall

当我尝试通过本地主机上的WAMP访问我的某个页面时,我一直在尝试修复一个奇怪的403 Forbidden错误。

添加规则以通过Windows防火墙打开端口80,apache使用,我注意到这不能解决我的问题,而是通过localhost为我的所有页面禁止403.

删除我刚刚制作的规则(导致这个规则开始)并没有解决它。禁用Windows防火墙无法修复它。重新启动计算机无法解决问题。有什么想法吗?

EDIT2: 我可以去localhost / phpmyadmin寻找任何值得的东西。

EDIT3:我的httpd.conf的内容: http://www.mediafire.com/?p54a53443efkefs

8 个答案:

答案 0 :(得分:38)

在httpd.conf中,找到以下部分并确保它们是正确的:

DocumentRoot "C:/wamp/www"

<Directory />
    Options None
    AllowOverride None
    Order deny,allow
    Deny from all
</Directory>

<Directory C:/wamp/www>
    Options None
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

这些是我在安装中使用的设置,它们工作正常。如果进行任何更改,请确保重新启动Apache。

如果您仍然遇到问题,请使用您的httpd.conf更新原始问题。


编辑:

这是kludgey,我只是在这里抓住吸管,但尝试在你的vhosts中添加一个新条目:

<VirtualHost *:80>
    DocumentRoot "C:/wamp/www"
    ServerName localhost
</VirtualHost>

答案 1 :(得分:11)

这可能是一个ipv6问题。所以在你的httpd.conf中添加你的ipv6本地地址:

变化:

Allow from 127.0.0.1

为:

Allow from 127.0.0.1
Allow from ::1:

答案 2 :(得分:6)

尝试更改httpd.conf中的行

Allow from 127.0.0.1 

 Allow from all

请参阅the documentation

答案 3 :(得分:3)

Marco Tamanti解决方案为我工作:

Allow from 127.0.0.1
Allow from ::1:

所以我有:

<Directory "c:/wamp/www/">
Options Indexes FollowSymLinks
AllowOverride all
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
Allow from ::1:
</Directory>

答案 4 :(得分:2)

你的“全部拒绝”是造成403错误的原因。您发布的设置用于阻止所有流量,以便稍后允许特定流量。如果您从不允许特定流量,您将永远不会让它工作。

如果出现404错误,请确保使用正确的路径,并且apache错误日志中没有错误。

http://httpd.apache.org/docs/current/mod/core.html#directory

答案 5 :(得分:1)

您需要3个步骤,请确保这3件事

<强> 1

首先 端口80和443必须同时允许TCP和UDP数据包。为此,请在Windows防火墙上为端口80和443创建TPC和UDP的2个入站规则。 (或者您可以禁用整个防火墙进行测试,但如果允许入站规则,则可以永久解决方案)

<强> 2

如果您正在使用WAMPServer 3请参阅答案底部

对于WAMPServer版本&lt; = 2.5

您需要更改Apache上的安全设置以允许从其他任何位置进行访问,因此请编辑.length文件。

更改此部分:

httpd.conf

致:

#   onlineoffline tag - don't remove
     Order Deny,Allow
     Deny from all
     Allow from 127.0.0.1
     Allow from ::1
     Allow from localhost

如果“全部允许”行不能用于您的“需要全部授权” 那么它会对你有用。

WAMPServer 3有不同的方法

在版本3和&gt;中WAMPServer有一个为# onlineoffline tag - don't remove Order Allow,Deny Allow from all 预定义的虚拟主机,所以根本不修改localhost文件,保留它,就像你找到它一样。

使用菜单编辑httpd.conf文件。

enter image description here

它应该是这样的:

httpd-vhosts.conf

将其修改为

<VirtualHost *:80>
    ServerName localhost
    DocumentRoot D:/wamp/www
    <Directory  "D:/wamp/www/">
        Options +Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require local
    </Directory>
</VirtualHost>

希望您已为项目创建虚拟主机,而不是使用您网站的<VirtualHost *:80> ServerName localhost DocumentRoot D:/wamp/www <Directory "D:/wamp/www/"> Options +Indexes +FollowSymLinks +MultiViews AllowOverride All Require all granted </Directory> </VirtualHost> 文件夹。在这种情况下,请单独保留localhost定义,并仅对您的虚拟主机进行更改。

第3 不要忘记在进行此更改后重新启动Wamp或Apache的所有服务

答案 6 :(得分:0)

简单的解决方案。只需以管理员身份运行Wamp Installations文件,它们就像魅力一样:)

答案 7 :(得分:0)

我发现在启动WAMP后为我工作的是,左键单击任务栏上显示的WAMP图标,然后单击快速管理下的启动所有服务。然后我可以使用IE访问localhost。我甚至回到httpd.config文件并将其设置回默认值。

希望这有帮助。