Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

PHP: APC enabled, but still doesn't work?

Tags:

php

apc

On my new Xubuntubox I installed the lamp-server tools, php, php-apc, added the extension=apc.so line to the php.ini and rebootet the system. Apache and PHP seem to work well, but APC doesn't.

So I checked what the apc.php file would say:

No cache info available. APC does not appear to be running.

But in the php info it seems to be enabled. Have a look what php -i | grep 'apc' says:

Additional .ini files parsed => /etc/php5/cli/conf.d/apc.ini,
apc
apc.cache_by_default => On => On
apc.canonicalize => On => On
apc.coredump_unmap => Off => Off
apc.enable_cli => Off => Off
apc.enabled => On => On             <- it is enabled
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

As expected php -m | grep 'apc' also finds apc.

Do you know what is missing, that I can't use it correctly?

like image 430
erikbstack Avatar asked May 23 '12 08:05

erikbstack


1 Answers

There are two ways to run PHP.

You are showing the CLI configuration for PHP, and apc.php is not using it.

Indeed, if you check phpinfo() through your browser, you can see that no APC extension is loaded.

The solution : Open at /etc/php5/cgi/conf.d/apc.ini (cgi not cli) and paste your configuration there, again. Restart the web server (sudo service httpd restart) and voilà !

Hope this helps !

like image 183
Justin T. Avatar answered Oct 12 '22 21:10

Justin T.