2013-06-02 36 views
0

我想用apc排除一个用于高速缓存的文件夹。作为APC过滤器即时通讯使用...PHP APC从高速缓存中排除文件夹

apc.cache_by_default=1 
apc.filters="-/var/www/mysite/httpdocs/phpmyadmin/.*" 

我的问题是现在,我的过滤器不工作递归。 APC仍然缓存phpmyadmin的子文件夹。任何想法如何我可以使用我的过滤器递归?

+0

这应该工作。你没有做任何奇怪的事情,比如有一个到那个目录的符号链接?呃,你已经重启了php-fpm,而不是nginx吧? – Danack

+0

是的我每次都重新启动php-fpm,之后我在apc.ini中进行了更改 –

+0

并且它在phpinfo输出中显示了正确的apc.filters条目? – Danack

回答

0

它应该只是工作。有可能它没有被拾取,因为符号路径的某些功能或文件被包含在内。

无论哪种方式,你可以只匹配任何有phpMyAdmin的像的文件名:

apc.filters = "-.*phpmyadmin.*" 
1

还有,你需要为了解决这个问题

  1. 更改虚拟做两件事主机禁用APC的phpMyAdmin的:
Alias /phpmyadmin "/usr/share/phpmyadmin/" 
<Directory "/usr/share/phpmyadmin/"> 
     AllowOverride All 
     Options FollowSymlinks 
     Order allow,deny 
     Allow from all 
     php_admin_value open_basedir "/srv/:/tmp/:/usr/share/:/etc/webapps:/usr/share/pear/" 
     php_admin_value apc.enabled 0 
</Directory> 
  1. 添加过滤器对所有的phpMyAdmin的网页:

apc.filter="-/usr/share/phpmyadmin/.*"