Apc_store does not work between requests

$bar = 'BAR'; apc_store('foo', $bar); var_dump(apc_fetch('foo')); 

Within the framework of one request this work.

Now, if I try to execute var_dump(apc_fetch('foo')); on another request, it prints:

 bool(false) 

Any help?

I'm on gentoo with PHP 5.2, APC-3.1.9

Here is what phpinfo () knows about APC:

 APC Support enabled Version 3.1.9 APC Debugging Disabled MMAP Support Enabled MMAP File Mask no value Locking type pthread mutex Locks Serialization Support php Revision $Revision: 308812 $ Build Date May 27 2011 13:14:20 Directive Local Value Master Value apc.cache_by_default On On apc.canonicalize On On apc.coredump_unmap Off Off apc.enable_cli Off Off apc.enabled On On apc.file_md5 Off Off apc.file_update_protection 2 2 apc.filters no value no value apc.gc_ttl 3600 3600 apc.include_once_override Off Off apc.lazy_classes Off Off apc.lazy_functions Off Off apc.max_file_size 1M 1M apc.mmap_file_mask no value no value apc.num_files_hint 1000 1000 apc.preload_path no value no value apc.report_autofilter Off Off apc.rfc1867 Off Off apc.rfc1867_freq 0 0 apc.rfc1867_name APC_UPLOAD_PROGRESS APC_UPLOAD_PROGRESS apc.rfc1867_prefix upload_ upload_ apc.rfc1867_ttl 3600 3600 apc.serializer default default apc.shm_segments 1 1 apc.shm_size 32M 32M apc.slam_defense On On apc.stat On On apc.stat_ctime Off Off apc.ttl 0 0 apc.use_request_time On On apc.user_entries_hint 4096 4096 apc.user_ttl 0 0 apc.write_lock On On 

If you need other information, please tell me.

Here is how I installed it: https://serverfault.com/questions/274261/failed-installing-apc

I noticed one thing: in the phpinfo Configure command, I did not find apc

'./configure' '--disable-cli' '--disable-drop-path' 'Disable forces-CGI redirect' 'Prefix = / USR / local / php5' '--with-config-file-path = / usr / local / lib / php5 '' --with-pear = / usr / share / php5 '' --enable-exif '' --enable-ftp '' --enable-bcmath '' --enable-calendar '' --with-gd '' --enable-gd-native-ttf '' --with-freetype-dir '' --with-gettext '' --with-zlib-dir '' --with-imap '' --with-IMAP-SSL '' --with-PNG-DIR = / USR '' --with-JPEG-Dir = / USR '' --with-xpm-dir = / usr '' --with -openssl '' --with-kerberos '' --enable-sysvsem '' --enable-sysvshm '' --with-mcrypt '' --with-iconv '' --enable-mbstring = all '' - enable-mbregex '' --with-mysql = / usr '' --with-mysqli '' --with-curl '' --with-XSL

+7
source share
4 answers

Maybe you are using PHP on top of CGI (instead of FastCGI, which you should use) - see my answer in another question why APC does not work if PHP is working on CGI.

+6
source

By default, ttl (apc.ttl) is 0 seconds, this is strange - try specifying ttl (in seconds) while saving the value:

 apc_store('foo', $bar, 60); 
0
source

Php.ini content

 apc.enabled="1" apc.shm_segments="1" apc.shm_size="128M" apc.ttl="7200" apc.user_ttl="7200" apc.file_update_protection="3" apc.cache_by_default="0" apc.max_file_size="1M" apc.stat="0" apc.write_lock="1" apc.report_autofilter="0" apc.include_once_override="0" apc.localcache="1" apc.localcache.size="1024" apc.coredump_unmap="0" ; Optional, Comment out them later on apc.num_files_hint="5000" apc.user_entries_hint="5000" apc.gc_ttl="3600" apc.stat_ctime="0" 

Contents apctest.php

 <?php $bar = 'BAR'; apc_store('foo', $bar); var_dump(apc_fetch('foo')); ?> 

Result of apctest.php

 string 'BAR' (length=3) 

Contents apctest2.php

 <?php var_dump(apc_fetch('foo')); ?> 

Result of apctest2.php

 string 'BAR' (length=3) 

apc.php is shown in the User Cache Entries section.

 User Entry Label Hits Size Last accessed Last modified Created at Timeout Deleted at foo 4 656 31.05.2011 12:12:22 31.05.2011 12:05:33 31.05.2011 12:05:33 None [Delete Now] 

Software version:

 PHP Version 5.3.6 Server Version: Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8e-fips-rhel5 DAV/2 SVN/1.6.9 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 mod_fcgid/2.3.5 mod_perl/2.0.4 Perl/v5.8.8 OS: CENTOS 5.6 x86_64 standard 
0
source

All Articles