Tag Archives: apache

访问phpmyadmin遇到403解决

本来这个也不准备发的(居然还被自己口胡成玄学= =)……直到膝盖中了一箭。
其实是应 @arguskao 的要求发出来的,他说写出来总有可能帮助遇到困难的人……(咱怎么连这么单纯的目的都没有)
遇到问题一定要翻日志翻日志翻日志翻日志翻日志翻日志翻日志翻日志翻日志……

问题

一台CentOS, LAMP架构, yum install 了一只phpmyadmin结果直接用ip/phpmyadmin访问的时候报403。

思路

403嘛,权限问题。由于当时还在轻轨上,脑袋有些短路,做了下面的事情:先直接试着把/usr/share/phpMyAdmin的权限组改到apache:apache,还是403。全改777,还是403。很”神奇”地发现,把目录改个其他名字好了。睡了一觉醒了才想起来要去翻日志,说由于服务器配置不允许访问,而不是Permission denied. 于是问题锁定在/etc/httpd内。grep大法一下,发现/etc/httpd/conf.d/phpMyAdmin.conf里面一段是这样写的:

<IfModule !mod_authz_core.c> \# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
</IfModule>

这不403才怪啊……

解决

改成这样就好了:

<IfModule !mod_authz_core.c> \# Apache 2.2
Order Allow,Deny
Allow from all
</IfModule>

也可以只在原来的基础上加上自己的常用ip的allow规则,更安全…