WAMP 403 Windows 7上的禁止消息

时间:2011-11-20 21:31:08

标签: apache wamp wampserver httpd.conf http-status-code-403

我在Windows 7机器上安装了WAMP 2.1版。当我在浏览器中浏览到localhost时,可以看到WAMP服务器页面。

但是当我在浏览器中浏览我的IP时,我收到了消息

  

403 Forbidden:您无权访问/在此服务器上。

有什么建议吗?

26 个答案:

答案 0 :(得分:126)

127.0.0.1(Apache的配置文件)中httpd.conf以外的地址禁止访问您的Apache服务器:

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

您的PHPMyAdmin访问权限相同,配置文件为phpmyadmin.conf

<Directory "c:/wamp/apps/phpmyadmin3.4.5/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Deny,Allow
        Deny from all
        Allow from 127.0.0.1
</Directory>

您可以将它们设置为允许来自所有IP地址的连接,如下所示:

AllowOverride All
Order allow,deny
Allow from all

答案 1 :(得分:62)

我发现了一个更简单的修复...

虽然图标为绿色,但WAMP仍然需要“放在线”(左键单击图标时的最后一项菜单)。

之后我正常访问。

答案 2 :(得分:25)

对我来说,包含“Require local”有助于解决错误403.别名配置文件如下所示:

Alias /mytest/ "C:/mytest/" 

<Directory "C:/mytest/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order allow,deny
    Allow from all
    Require local
</Directory>

答案 3 :(得分:10)

如果您可以从外部提供对WAMP服务器的访问权限,则可以使用httpd.conf中更改权限的解决方案。

如果您不想这样做,那么您所要做的就是告诉Windows“localhost”域指向127.0.0.1。您可以通过编辑系统目录中的hosts文件来完成此操作。

该文件位于:C:\ Windows \ System32 \ drivers \ etc \ hosts

默认情况下,Windows 7附带:

# localhost name resolution is handled within DNS itself.
#   127.0.0.1       localhost
#   ::1             localhost

您必须取消注释localhost的映射:

# localhost name resolution is handled within DNS itself.
127.0.0.1       localhost
#   ::1         localhost

注意:您将无法将hosts文件编辑为只读文件。要进行编辑,您必须是管理员,将文件复制到其他位置,编辑它然后将其复制回etc目录。

我不建议更改hosts文件。使用httpd.conf文件的权限。仅当您不希望从外部访问服务器时才使用hosts文件方法。

答案 4 :(得分:7)

我发现的另一件事是,如果您的网络适配器使用IPV6,它将不会显示为127.0.0.1但是:: 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>

您的PHPMyAdmin访问也一样,配置文件是phpmyadmin.conf:

<Directory "c:/wamp/apps/phpmyadmin3.4.5/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
        Order Deny,Allow
        Deny from all
        Allow from 127.0.0.1
        Allow from ::1
</Directory>

答案 5 :(得分:7)

尝试将以下代码行添加到httpd-vhosts.conf文件中:

<VirtualHost *:80>
ServerAdmin serveradmin@host.com
DocumentRoot "C:\wamp\www"
ServerName localhost
</VirtualHost>

答案 6 :(得分:4)

如果您使用了localhost / phpmyadmin /

只需使用

  

127.0.0.1/phpmyadmin/ for PHPMyAdmin

     

127.0.0.1/sqlbuddy/ for SQLBuddy

或者如果您使用过localhost:8080 / phpmyadmin /那么

  

127.0.0.1:8080/phpmyadmin/ for PHPMyAdmin

     

127.0.0.1:8080/sqlbuddy/ for SQLBuddy

答案 7 :(得分:4)

请记住删除httpd-vhosts.conf

中的虚拟元素
<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "c:/Apache24/docs/dummy-host.example.com"
    ServerName dummy-host.example.com
    ServerAlias www.dummy-host.example.com
    ErrorLog "logs/dummy-host.example.com-error.log"
    CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host2.example.com
    DocumentRoot "c:/Apache24/docs/dummy-host2.example.com"
    ServerName dummy-host2.example.com
    ErrorLog "logs/dummy-host2.example.com-error.log"
    CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>

答案 8 :(得分:3)

对于Apache版 2.4.x ,只需将 Require local 替换为 Require all granted <Directory "c:/wamp/www/"> 标记内的 httpd.conf 文件中,然后重新启动所有服务

答案 9 :(得分:2)

这个问题可能有很多原因

我所经历的是:
1)127.0.0.1 localhost条目在主机文件中重复 2)Apache mod_rewrite未启用

无论原因如何,备份您的www文件夹,vhost配置文件(和httpd配置文件)都会有所帮助。 这样的过程需要几分钟。

祝你好运

答案 10 :(得分:2)

我读过&amp;试过所有修复但没有人工作。最后我发现Wamp Server徽标是绿色但需要“在线”。 这么简单&amp;检查PHPMyAdmin.Cofg&amp; HttPD.cofg只需点击在线投放

答案 11 :(得分:1)

我在Windows 7上遇到了这个问题。在httpd-vhosts.conf中添加以下代码为我解决了这个问题。

<VirtualHost *:80>
  DocumentRoot "F:/wamp_server/www/"
  ServerName localhost
</VirtualHost>

答案 12 :(得分:1)

感谢您的提问。 我现在正在使用wamp 3。 我会在你的问题下找到一个简单的答案。 但是那个答案应该在wamp 3上稍微改变一下。 步骤如下:

  1. 右键单击wamp icon
  2. 选择Wamp Setting
  3. 点击菜单项:在线/离线
  4. 左键单击wamp图标
  5. 你会发现有一个名为“Put online”的新项目

答案 13 :(得分:1)

我花了很长时间才弄清楚这一点。

C:\瓦帕\ BIN \阿帕奇\ apache2.4.9 \ CONF \额外\的httpd-vhosts.conf

在此文件中,您将注意到几个示例虚拟主机文件,如下所示:

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "c:/Apache24/docs/dummy-host.example.com"
    ServerName dummy-host.example.com
    ServerAlias www.dummy-host.example.com
    ErrorLog "logs/dummy-host.example.com-error.log"
    CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host2.example.com
    DocumentRoot "c:/Apache24/docs/dummy-host2.example.com"
    ServerName dummy-host2.example.com
    ErrorLog "logs/dummy-host2.example.com-error.log"
    CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>

只需删除这些条目并替换为:

<VirtualHost *:80>
    ServerAdmin serveradmin@host.com
    DocumentRoot "C:\wamp\www"
    ServerName localhost
</VirtualHost>

你肯定需要确保你的其他鸭子在一排,但这对我来说有效的解决方案。

答案 14 :(得分:1)

我尝试了上面的配置,只有这适用于我的WAMP Apache 2.4.2配置。对于Windows主机文件中没有命名域的多个根站点,请使用http://locahost:8080, http://localhost:8081, http://localhost:8082和此配置:

#ServerName localhost:80
ServerName localhost

Listen 8080
Listen 8081
Listen 8082
#..... 
<VirtualHost *:8080>
    DocumentRoot "c:\www"
    ServerName localhost
    <Directory "c:/www/">
        Options Indexes FollowSymLinks
        AllowOverride all
        Require local
    </Directory>
</VirtualHost>
<VirtualHost *:8081>
    DocumentRoot "C:\www\directory abc\svn_abc\trunk\httpdocs"
    ServerName localhost
    <Directory "C:\www\directory abc\svn_abc\trunk\httpdocs">
        Options Indexes FollowSymLinks
        AllowOverride all
        Require local
    </Directory>
</VirtualHost>
#<VirtualHost *:8082></VirtualHost>.......

答案 15 :(得分:1)

对于Wamp 3.1.3和Apache 2.4,我只需要在httpd-vhosts.conf文件中更改1行。

  1. 打开httpd-vhosts.conf
  2. 将“需要本地”更改为“需要全部授予”
  3. 重新启动所有服务

然后,我能够从其他计算机访问我的apache服务器。

将此视频归功于此视频:https://www.youtube.com/watch?v=Sy_f6wBGnjI

答案 16 :(得分:0)

令人惊讶的是,DocumentRoot中的方括号(以及相关的,如&lt; Directory&gt;)路径也会导致错误403:

  • DocumentRoot "P:/TRY/web/fatfree/from_github/fatfree-master[bang]"以403失败,而
  • DocumentRoot "P:/TRY/web/fatfree/from_github/fatfree-master"工作正常。

(我没有打算弄清楚Apache路径转义,如果有的话,只是重命名路径。如果有人知道,欢迎提出意见。)

答案 17 :(得分:0)

确保您的.conf文件中的路径名中没有使用Windows的目录分隔符(反斜杠),即使您使用的是Windows。 Apache不理解它们,但仍然会启动,然后输出403 Forbidden Message

错误:

<Directory "c:\websites\my-website\">

右:

<Directory "c:/websites/my-website/">

答案 18 :(得分:0)

嗨,有两个解决方案:

  1. 将文本文件(httpd.conf)中的端口80更改为81 并单击127.0.0.1:81

  2. 更改网络设置 转到控制面板 - 网络和互联网 - 网络和共享中心

  3. 点击 - &gt;本地连接 选择 - &GT; propertis 在-allow中检查为true ..... 和--- allo其他.....

答案 19 :(得分:0)

httpd.conf中的这个配置对我来说很好。

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

答案 20 :(得分:0)

我也有这个问题。我的问题的路线是我在我的vhosts.conf文件中犯了一个错误。如果你正在使用vhosts,这是另一件需要检查的事情

答案 21 :(得分:0)

同样在Apache 2,4上你可能需要将它添加到conf中的目录指令中, 如果您决定包含httpd-vhosts.conf。

默认情况下,您可以在C:\中安装wamp,但仍选择在其他位置部署Web开发。

要在vhosts.conf中执行此操作,您可以添加此指令:

<Directory "e:/websites">
    Options Indexes FollowSymLinks MultiViews
    DirectoryIndex index.php
    AllowOverride All
  <IfDefine APACHE24>
    Require local
  </IfDefine>
  <IfDefine !APACHE24>
    Order Deny,Allow
    Allow from all
    Allow from localhost ::1 127.0.0.1
  </IfDefine>
</Directory>

答案 22 :(得分:0)

除了清除.htaccess文件中的混乱之外,我已经尝试了所有的东西。

转到 www / 目录,并在另一个文件夹中复制 .htaccess 文件。然后清除 .htaccess 原始文件中的所有行。 并添加此行,

RewriteEngine On

然后重启服务器。 这解决了我的问题,并访问了我所有的localhost站点。 希望它能解决你的问题。

答案 23 :(得分:0)

我的解决方案是禁用编码文件的编码(这些文件在Windows中是绿色的)。我从MAC计算机获得这些文件,默认情况下是加密的。

Ive select these files > right click > properities > general tab > andvanced > uncheck encrypt files...

瞧它有效。

答案 24 :(得分:0)

确保目录c:/wamp/apps/phpmyadmin3.1.3.1/中的文件名与phpMyAdmin.conf中的名称(或版本)匹配(Alias /phpmyadmin "c:/wamp/apps/phpmyadmin3.1.3.1/"

答案 25 :(得分:0)

我发现如果你使用ammps,由于某些原因它在你的根文件夹中总是被禁止,所以我把它放在我的根文件夹上面的目录中,并使用这个<{1}}中的别名/ p>

httpd.conf

请注意我正在使用ammps,我不确定它是否适用于其他人,但值得一试;)