APC - это Alternative PHP Cache, а если по-русски то php-акселератор. Бесплатная и открытая система для кэширования предкомпилированных PHP скриптов, позволяет значительно увеличить производительность PHP скриптов выполняющихся из под mod_php.
Ставится обычно просто:
# apt-get install php-apc
На Ubuntu 10.04 LTS по умолчанию ставится версия 3.1.3p1-2 и тут скрывается маленький подвох: из-за небольшого косяка в APC апачевский лог error.log забивается следующей ерундой:
[Thu Oct 14 23:56:25 2010] [apc-warning] Potential cache slam averted for key ...
Некоторые гуглолюди предлагают починить прописыванием директив
apc.slam_defense=0 apc.write_lock=0
но лично мне это не помогло, т.к. в данной версии apc.slam_defense просто отсутствует.
Решение простое: откатиться до более старой версии или обновиться до 3.1.5
Я выбрал обновление. Итак, поехали:
# apt-get install php5-dev apache2-threaded-dev # pecl install apc-3.1.5 # service apache2 restart
Если интересно как работает APC и насколько эффективно, делаем следующее:
# cp /usr/share/php/apc.php /путь-до-папки-на-вашем-вебсервере - для НОВОЙ версии # cp /usr/share/doc/php-apc/apc.php.gz /путь-до-папки-на-вашем-вебсервере - для СТАРОЙ версии # gzip -d /путь-до-папки-на-вашем-вебсервере/apc.php.gz - для СТАРОЙ версии
При необходимости правим владельца файла, ставим права на apc.php и открываем страничку http://www.ваш-вебсервер.ru/apc.php
Там можно понаблюдать за жизнью кэша, посмотреть эффективность его работы, проверить на наличие новой версии и так далее.
Сносим все (если нужно) таким способом:
# pecl uninstall apc-3.1.4 # apt-get remove php-apc