一个 phpMyAdmin 相关的 500 错误

今天测试 LAMP 服务器配置的时候遇到一个打开 phpMyAdmin 的时候提示 500 错误(HTTP 内部错误号)的情况。Internal error 500 出现的原因有多种。这里记录的是由于 PHP 执行路径设定造成的 500 错误。

PHP 的主配置文件 php.ini 中有关于 PHP 执行路径的设置,参数为 open_basedir。有时候为了增强安全性而将其启用并将参数设置为具体的 VirtualHost 的目录,比如,

open_basedir = "/var/www/"

这样一来就只有位于此目录中的 php 文件才会被执行。如果要执行的 php 文件在其它目录,服务器就会提示 500 Internal error。改设置并不支持 Apache 类似的 FollowSymLinks 配置。

对于 CentOS 上采取默认安装的 EPEL 源的 phpMyAdmin,其默认目录为,

/usr/share/phpMyAdmin/

一般是通过符号连接(SymLinks)将其映射到常用的服务器目录(比如 /var/www 下)。

这么一来,前面的 PHP 的限制目录并不包含 phpMyAdmin 的目录,因此访问时会遇到内部错误。

 

 ©

本文发表于水景一页。永久链接:<http://cnzhx.net/blog/phpmyadmin-500-internal-error/>。转载请保留此信息及相应链接。

时间过去太久,评论已关闭。
如果您有话要说,请到讨论区留言并给出此文章链接。
谢谢您的理解 :-)