为什么我使用 Windows 7 访问 phpMyAdmin 时会出现权限访问错误?禁止访问
您无权访问此服务器上的 /phpmyadmin/。
为什么我使用 Windows 7 访问 phpMyAdmin 时会出现权限访问错误?禁止访问
您无权访问此服务器上的 /phpmyadmin/。
将文件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地址。解决方法: 只需添加
Allow 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服务器。
Allow from all
将会使数据库对公众开放。 - oxygenAllow from ::1
即可。 - oxygenAllow from ::1
对我有用,这就是 Allow from all
所做的,所以我在实践良好安全性的情况下将其删除 :) - sabgenton您只需检查您的 WAMP 服务器是否在线。
要将您的WAMP服务器上线,请按照以下步骤操作:
然后您就完成了...
如果您正在使用Apache 2.4.2或更高版本的WAMP,则需要使用Require all
而不是Allow
,并删除Order Deny,Allow
:
<Directory "f:/Projects/myproject/www/">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Require all granted
</Directory>
*正如这篇博客文章中所述
只需使用127.0.0.1代替localhost(无需更改配置文件)。
系统:
这样做是有效的:
http://127.0.0.1/phpmyadmin/
这个不起作用:
http://localhost/phpmyadmin/
我遇到了同样的问题。原来我的Windows安装中正在使用IPv6地址::1
,而不是127.0.0.1
。为了解决这个问题,我打开了httpd.conf
并更改了以下行:
Allow from 127.0.0.1
目标:
Allow from 127.0.0.1 ::1
现在我可以通过localhost
访问服务器。无论你做什么,都不要删除上面一行的Deny from all from
,否则你网络中的任何人都可以访问你的Web服务器(除非这正是你想要的)。
ping localhost
,并得到了Reply from ::1: time<1ms
。看起来我的Win7机器正在使用IPv6地址解析localhost。你的解决方案解决了这个问题。我同意,这可能应该是被接受的答案。 - Chrishttpd.conf
对我不起作用,但是当我在 phpmyadmin.conf
中做同样的事情时它有效! - Adilwamp/alias/phpmyadmin.conf
,而不是 httpd.conf
。 - bg17aw::1 - - [20/Dec/2012:21:35:04 +0000] "GET /phpmyadmin/ HTTP/1.1" 403 213
在开头的::1是客户端地址。结尾的403是拒绝访问的代码。
上面的答案将消除所有限制并向所有人打开phpmyadmin,但如果您仍然希望仅将phpmyadmin限制为您自己的机器(通常是个好主意),则需要在以下行下方...
Allow from 127.0.0.1
..添加以下内容:
Allow from ::1
(编辑:添加了Nukeface的建议)
Allow from 127.0.0.1
下一行 Allow from ::1
"。以防它切换回IPv4(因为我禁用了IPv6)。 - rkeetDeny from all
Allow from localhost
这个做法起效了:
Deny from all
Allow from 127.0.0.1
我正在使用WampServer 2.2版本
Require local
to
Require all granted
我希望将我的服务器放到网上运行,而不是在本地主机/127.0.0.1上运行,但却收到了“禁止访问”的消息。我在Windows 7 64位系统上运行WAMP 2.2服务器 (Apache 2.4.2 / PHP 5.4.3 / MySQL 5.5.24)。以下是解决方法:
httpd.conf
以上方法适用于我的情况。从这个主题中我了解到,可能会出现很多导致以上错误信息的情况,如果我的方法不能解决问题,请尝试其他解决方案。
祝你好运。
(我希望这能帮助像我一样遇到类似问题的人。我没有找到以上任何一种解决方案适用于我。)
Allow from all
会将数据库开放给公众。真正的问题是WAMP在您的Windows版本中绑定到一个IPv6地址。修复方法是在c:\wamp\alias\phpmyadmin.conf
的<Directory "c:/wamp/apps/phpmyadmin3.4.5/">
中添加Allow from ::1
。 - oxygen