Apc не кэширует файлы, он кэширует только пользовательские данные . Когда я тестировал на localhost, APC кэшировал все файлы, которые я использовал. Но это не работает на моем общем хостинге. Это проблема конфигурации?
Это статистика из моего apc.php (APC 3.0.19):
На приведенном выше рисунке APC не использует память. Это то, что phpinfo () дает мне:
На localhost я получаю доступ только к http: //localhost/test.php . Apc будет немедленно кэшировать localhost / test.php (файл типа). но на общем хосте я не вижу его кеш-файла (он может кэшировать переменную, если я храню, но не с файлом);
apc_add('APC TEST', '123'); echo apc_fetch('APC TEST'); //-- it work with this code
Я хочу Apc cache test.php, если я получаю доступ к test.php.
Есть ли настройка make, которую APC не может кэшировать тип файла или это ограничение на общий хостинг ?.
В ответ на ваш комментарий «Apc включен и apc.cache_by_default = 1; установка php с CGI, я проверил phpinfo ();»: Это проблема. Если вы запускаете PHP через CGI, каждый PHP-процесс создается на каждом этапе загрузки. Поскольку APC привязан к процессу PHP, он снова создается на каждом доступе к странице. Так что, очевидно, в нем нет никаких данных. Пример вашего кеша пользователя работает только потому, что вы храните и выбираете переменную при загрузке одной страницы.
Итак: APC не может работать с PHP над CGI. Используйте FastCGI (который сохраняет работоспособность процессов, тем самым делая работу Cache и, как правило, быстрее).
APC в режиме CGI на общем хостинге, как правило, не представляется возможным, хотя это возможно. В зависимости от вашего приложения это может также быть угрозой безопасности. Поскольку никич сказал, что вы сможете заставить его работать с FastCGI, но даже это нелегко в зависимости от вашего хоста. Вот подробный отчет о том, кто получил работу. Это может дать вам некоторую помощь в попытке заставить его работать в режиме CGI
FastCGI с кэшем Opcode PHP APC
Если ваш хостинг настроен с использованием php в режиме fastcgi, APC может не работать. можете ли вы проверить это со стандартной страницы phpinfo ()? edit: Я стою исправлено, выбран правильный ответ. Я запутал CGI / fastcgi. Да, CGI не будет работать. Но я хочу отметить, что даже fastcgi не так хорош в кэшировании кода операции.