我是WAMP的新手,今天才安装。

设置进行得很好,localhost似乎工作,但当我试图访问phpMyAdmin我得到这个错误:

被禁止的 您没有权限访问此服务器上的/phpmyadmin/。

为什么我得到这个权限访问错误与phpMyAdmin?

我用的是Windows 7。


当前回答

我以前解决过这个问题。它的发生有很多原因,所以你可以使用下面的部分或全部步骤(使用任何文本编辑器,如notepad++打开提到的文件)。

如果你在C:\ WAMP中安装WAMP

打开C:\wamp\bin\apache\apache2.2.22\conf\httpd.conf文件

注意:您使用的Apache版本可能与Apache 2.2.22不同,因此您需要编写它。

搜索:目录“C:/wamp/www/”你会发现类似的东西:

<Directory "C:/wamp/www/">
   # maybe there is some comments here ...
    AllowOverride all
    Order Allow,Deny
    Allow from all
</Directory>

确保Allow from all是存在的,而不是多余的。

2-打开文件C:\wamp\alias\phpmyadmin.conf。

确保

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

将“允许”从127.0.0.1更改为“允许”。

您可以从all中删除Deny,或者通过在行首添加#来注释它,但必须确保Allow from all是</Directory>之前的最后一行代码。

注意:phpMyAdmin的版本可能与3.5.1不同。

使用localhost/phpmyadmin而不是127.0.0.1/phpmyadmin:

打开文件C:\wamp\bin\apache\apache2.2.22\conf\extra\httpd-vhosts.conf。在它的末尾添加以下内容。

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

其他回答

在我的例子中,问题是phpMyAdmin .conf文件中错误地指定了phpMyAdmin版本。你可以查阅:

进入wamp/apps/phpmyadmin3.x。X:注意文件名——你现在用的是什么版本? 打开wamp/alias/phpmyadmin.conf文件: 选项索引遵循symlinks MultiViews AllowOverride所有 否认,允许 允许从所有

检查第一行(目录“c:/wamp/apps/phpmyadmin3.x.x/”)的文件名是否与实际的文件名完全相同。

确保目录文件名绝对正确。

您必须检查WAMP服务器是否在线。

要使WAMP服务器联机,请执行以下步骤。

转到WAMP服务器通知图标(在任务栏中)。 单击WAMP服务器图标。 从菜单中选择最后一个选项,即“联机” 您的服务器将自动重新启动(仅限最新版本)。否则,您必须手动重新启动服务器。

然后你就完成了…

修改“c:\wamp\alias\phpmyadmin.conf”文件内容如下:

注意:出于安全考虑,您应该将Allow指令设置为允许来自本地机器。指令Allow from all是不安全的,应该限制在本地机器上。

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

这里我的WAMP安装在c:\ WAMP文件夹中。根据您的安装进行更改。

之前是这样的:

<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>

现代版本的Apache 2.2及更高版本将查找IPv6环回,而不是IPv4环回(您的本地主机)。

真正的问题是wamp绑定到IPv6地址。解决办法: 只需要添加允许from::1 - Tiberiu-Ionuț Stan

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

这将只允许本地机器访问Apache的本地应用程序。

在进行这些更改后重新启动Apache服务器。

如果你在Apache 2.4.2或更高版本中使用WAMP,你需要使用“要求全部”而不是“允许”,并删除命令拒绝,允许:

<Directory "f:/Projects/myproject/www/">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride all
    Require all granted
</Directory>

*如本文所述

只需编辑文件“c:\wamp\alias\phpmyadmin.conf”

像这样

<Directory "C:/wamp64/apps/phpmyadmin4.5.5.1/">
    Options Indexes FollowSymLinks MultiViews

    AllowOverride All
    Require all granted
</Directory>