用phpize安装eAccelerator扩展

为php加速的方法有好多,Memcacache把数据缓存到内存,eAccelerator把php缓存到内存等等。

先记录一下在安装好php后怎么安装eAccelerator扩展。

首先检查phpize是否存在。

 
file /usr/local/web/php-5.3.0/bin/phpize
 
/usr/local/web/php-5.3.0/bin/phpize: Bourne shell script text executable

一般php的扩展会在源码包的ext目录下,可惜eAccelerator不含在内需要自己下载。

wget -c  http://bart.eaccelerator.net/source/0.9.6/eaccelerator-0.9.6-rc2.tar.bz2
 
tar jxvf eaccelerator-0.9.6-rc2.tar.bz2
 
cd eaccelerator-0.9.6-rc2

执行phpize生成configure前先要确保安装了autoconf。

centos为例,

 
yum intstall autoconf

在eaccelerator-0.9.6-rc2目录下执行phpize

 
/usr/local/web/php-5.3.0/bin/phpize

不出错的话会生成检测文件。

第二个参数–with-php-config是记录php安装信息的二进制文件路径

 
./configure --enable-eaccelerator=share --with-php-config=/usr/local/web/php-5.3.0/bin/php-config
 
make && make install

安装成功后会提供扩展目录地址。

 
Installing shared extensions:     /usr/local/web/php-5.3.0/lib/php/extensions/no-debug-non-zts-20090626/

把eaccelerator的扩展配置导入到php.ini中,并修改扩展地址。

cp /usr/local/web/php-5.3.0/lib/php.ini php.ini.bak
cat eaccelerator.ini >> /usr/local/web/php-5.3.0/lib/php.ini

扩展地址修改。

extension="/usr/local/web/php-5.3.0/lib/php/extensions/no-debug-non-zts-20090626/eaccelerator.so";

修改配置为调试模式,测试是否起效。

eaccelerator.debug = 1

重起php-cgi进程

killall php-cgi
./bin/spawn-fcgi -f /usr/local/web/php-5.3.0/bin/php-cgi -C 1 -F 1 -u nobody -g nobody -p 9000

访问一下页面后查看log。

vim eaccelerator_log
EACCELERATOR: Open for write failed for "/tmp/eaccelerator/6/1/eaccelerator-9402.295662": No such file or directory
EACCELERATOR cached: "/var/www/phpinfo.php"
EACCELERATOR hit: "/var/www/phpinfo.php"
EACCELERATOR hit: "/var/www/phpinfo.php"
~

发现原来tmp目录都没有权限,我手工改一下权限就OK了。

chmod 777 /tmp/eaccelerator
chmod -R 777 /tmp/eaccelerator
chown -R nobody:nobody /tmp/eaccelerator
drwxrwxrwx 18 nobody nobody   4096 Apr 23 23:08 eaccelerator
-rw-r--r--  1 nobody nobody  35989 Apr 23 23:08 eaccelerator_log

调试成功,还原配置

eaccelerator.debug = 0

重起php-cgi

killall php-cgi
./bin/spawn-fcgi -f /usr/local/web/php-5.3.0/bin/php-cgi -C 1 -F 1 -u nobody -g nobody -p 9000

一切完成。

你可能感兴趣的:(用phpize安装eAccelerator扩展)