我在 Centos7 上运行 apache 2.4.6 的服务器上安装了 phpMyAdmin,我收到错误,因为您无权访问此服务器上的 /phpmyadmin。
我的服务器 ip 是62.210.xx.xx
我62.210.xx.xx/phpmyadmin/
从另一个 ip 远程浏览xx.xx.xx.xx
/etc/httpd/conf.d/phpMyAdmin.conf
# phpMyAdmin - Web based MySQL browser written in php
#
# Allows only localhost by default
#
# But allowing phpMyAdmin to anyone other than localhost should be considered
# dangerous unless properly secured by SSL
Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin
<Directory "/usr/share/phpMyAdmin/">
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
Require ip 127.0.0.1
Require ip ::1
Require ip 62.210.xx.xx
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
#Order Deny,Allow
#Allow from 127.0.0.1
#Allow from ::1
#Allow from 62.210.xx.xx
#Deny from All
Allow from All
</IfModule>
</Directory>
<Directory "/usr/share/phpMyAdmin/setup/">
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
Require ip 127.0.0.1
Require ip ::1
Require ip 62.210.xx.xx
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Allow from 127.0.0.1
Allow from ::1
Allow from 62.210.xx.xx
#Deny from All
#Allow from All
</IfModule>
</Directory>
# These directories do not require access over HTTP - taken from the original
# phpMyAdmin upstream tarball
#
<Directory "/usr/share/phpMyAdmin/libraries/">
#Order Deny,Allow
#Deny from All
#Allow from None
</Directory>
<Directory "/usr/share/phpMyAdmin/setup/lib/">
#Order Deny,Allow
#Deny from All
#Allow from None
</Directory>
<Directory "/usr/share/phpMyAdmin/setup/frames/">
#Order Deny,Allow
#Deny from All
#Allow from None
</Directory>
# This configuration prevents mod_security at phpMyAdmin directories from
# filtering SQL etc. This may break your mod_security implementation.
#
#<IfModule mod_security.c>
# <Directory "/usr/share/phpMyAdmin/">
# #SecRuleInheritance Off
# </Directory>
#</IfModule>
我已经添加了行Require ip 62.210.xx.xx
,并Allow from 62.210.xx.xx
按照此处其他问题的建议,但仍然无法正常工作。
请查看并建议任何可能的方法。
谢谢
更新它的工作,Require all granted
但这Require mylocalIP
不是我想要的,我只想从我的服务器 ip62.210.xx.xx
或本地 ip 范围允许
我认为您需要查看主要的 apache 配置以查看其中对访问目录的任何限制。要查找的配置是: Order deny,allow Deny fromall
命令允许,拒绝所有人允许
如果这不起作用,请检查文件系统上的权限。如果这不起作用,那么 phpadmin 是否是指向其他未涵盖的其他地方的符号链接: Order deny,allow Deny fromall
命令允许,拒绝所有人允许
HTH科布斯
我在这个官方文档之后找到了一种让它工作的方法,当我从本地 ip 浏览时,我需要告诉 apache 我的本地 ip 范围。
添加
Require ip xxx.xx
了xxx.xx
我用于拨号连接的本地部分 IP 地址在哪里,如果您有专用 ip 添加完整 ipRequire ip xxx.xxx.xxx.xxx
。现在它的工作。
我希望它也对其他人有所帮助。
当我在我的 CentOS 7 VPS 中安装 PHPMyAdmin 时,我也遇到了同样的问题。我已通过添加此行来解决此问题Require all grant in the directory 部分。下面是一个例子。
注意:将 IP 地址替换为 127.0.0.1