我正在使用PHP 5.3在CentOS 5.6上运行一个LAMP栈。 我已经安装了phpMyAdmin,它的工作。 我能够login并做任何事情。 然后,我安装了memcached及其PHP扩展以及APC和它的PHP扩展。 我已经重新启动httpd和phpinfo()说, memcache和APC安装和configuration。
那么为什么phpMyAdmin现在在安装memcache和APC之后显示一个空白页面?
在您的php.ini文件中, 告诉APC不要cachingphpMyAdmin目录中的添加行:
apc.filters = "-/usr/share/phpmyadmin/.*"
根据官方PHP网站上的这个bug报告 ian dot matthews at imsoft dot co dot uk的用户ian dot matthews at imsoft dot co dot uk认为这是一个APC bug:
这是因为APC不能正确处理include / requirepath。 例如,一个典型的例子包括:
require_once './libraries/common.inc.php';APC工作不正常,在我的情况下,认为“。 作为apache目录而不是当前的目录。 虽然这似乎是一个APC问题,phpmyadmin可以通过以下方式提供帮助:(1)在需求更好的时候不会无故地使用require_once;(2)尽可能使用完整path,即:
require dirname(__FILE__) . '/subdir/file_to_include.php' ;
但这基本上意味着你应该调整phpMyAdmin的部分来弥补APC问题。 damian dot pastorini at gmail dot com的damian dot pastorini at gmail dot combuild议的一些更实用的解决scheme是damian dot pastorini at gmail dot com下行添加到php.ini :
apc.cache_by_default = 0
或者像这样通过Apacheconfiguration禁用phpMyAdmin的APC:
<Directory "/usr/share/phpmyadmin"> php_admin_flag apc.enabled Off </Directory>
我build议path/usr/share/phpmyadmin因为虽然你没有提供关于phpMyAdmin的系统安装的详细信息,但是这是在通过yum进行RPM安装时安装的典型位置,甚至是通过apt-get / aptitude在Ubuntu中。