作者: reistlin
来源: http://www.reistlin.com/blog/362
更新时间: 2011.09
版权声明: 原创文章.转载请保留作者信息和原文完整.谢绝任何方式的摘要

linux

一,环境:

Red Hat Enterprise Linux 5.4 x64
Nginx 0.8.55 (nginx-0.8.55.tar.gz)
PHP 5.2.17 (php-5.2.17.tar.gz)
PHP-FPM 5.2.17 (php-5.2.17-fpm-0.5.14.diff.gz)
APC 3.1.9 (APC-3.1.9.tgz)

用户信息:

用户:www-data
组:www-data
主目录:/home/www-data

目录结构:

app:应用程序安装目录
pkgs:源代码包目录
pkgs/build:源代码包编译目录

二,安装:

1,下载,解压缩

cd /home/www-data/pkgs/
wget http://pecl.php.net/get/APC-3.1.9.tgz
tar zxvf APC-3.1.9.tgz -C build

2,编译,安装

编译参数:
--enable-apc
--enable-apc-mmap

PHP 安装路径:
/home/www-data/app/php-5.2.17/

php-config 文件路径:
/home/www-data/app/php-5.2.17/bin/php-config

注意:需要在编译安装目录执行:phpize 脚本

cd /home/www-data/pkgs/build/APC-3.1.9

/home/www-data/app/php-5.2.17/bin/phpize

./configure \
--enable-apc \
--enable-apc-mmap \
--with-php-config=/home/www-data/app/php-5.2.17/bin/php-config \

make
make install

三,配置:

1,配置 APC 目录结构,新建 Symbolic Link 标准化调用方法

cd /home/www-data/app/php-5.2.17/lib/php/extensions
mv no-debug-non-zts-20060613 PECL
ln -s PECL/apc.so .

2,编辑 php.ini 文件,配置 extension_dir 目录

vim /home/www-data/app/php-5.2.17/etc/php.ini

; Directory in which the loadable extensions (modules) reside.
extension_dir = "/home/www-data/app/php-5.2.17/lib/php/extensions"

3,配置 APC PHP Extensions 参数

[apc]
extension = "apc.so"
apc.enabled = 1
apc.cache_by_default = On
apc.shm_segments = 1
apc.shm_size = 64M
apc.ttl = 3600
apc.user_ttl = 3600
apc.num_files_hint = 0
apc.write_lock = On

4,重新启动 php-fpm

/home/www-data/app/php-5.2.17/sbin/php-fpm restart

apc.png

四,补充信息:

关于 [PECL]
关于 [APC] (Alternative PHP Cache)

标签: linux, php