eAccelerator 0.9.5.2 安装
发布于 2008-01-24 18:53 阅读:46,248 评论:0 标签: eAccelerator Linux 安装

    有关eAccelerator的资料请看本站我翻译的:PHP加速器eAccelerator文档翻译

    一:eAccelerator把编译好的PHP程序存储在共享内存里面,并直接在这里面执行程序。不适合放入共享内存的文件将被缓存到硬盘上。所以先建立eAccelera缓存目录:

以下是引用片段:

[shengting@login sso]$ pwd
/data1/apache/sso
[shengting@login sso]$ mkdir cache-eaccelerator
[shengting@login sso]$ chmod 777 cache-eaccelerator/
[root@login sso]# chown nobody:nobody cache-eaccelerator/

    二:下载文件:

以下是引用片段:

[shengting@login sso_front_soft]$ cd /home/sso_front_soft/
[shengting@login sso_front_soft]$ pwd
/home/sso_front_soft
[shengting@login sso_front_soft]$ su
Password:
[root@login sso_front_soft]# wget "http://bart.eaccelerator.net/source/0.9.5.2/eaccelerator-0.9.5.2.tar.bz2"
--10:31:00--  http://bart.eaccelerator.net/source/0.9.5.2/eaccelerator-0.9.5.2.tar.bz2
     => `eaccelerator-0.9.5.2.tar.bz2'
 Resolving bart.eaccelerator.net... 193.190.253.234
 Connecting to bart.eaccelerator.net[193.190.253.234]:80... connected.
 HTTP request sent, awaiting response... 200 OK
 Length: 121,935 [application/x-tar]

 100%[===================================================================>] 121,935       55.29K/s            

 10:31:03 (55.23 KB/s) - `eaccelerator-0.9.5.2.tar.bz2' saved [121,935/121,935]

    三:解压并进入文件

以下是引用片段:

[root@login sso_front_soft]# tar -jxvf eaccelerator-0.9.5.2.tar.bz2
[root@login sso_front_soft]# cd eaccelerator-0.9.5.2
[root@login eaccelerator-0.9.5.2]# pwd
/home/sso_front_soft/eaccelerator-0.9.5.2

    四:which一下phpize得到phpize地址:/usr/local/bin/phpize
phpize 命令是用来准备 PHP 扩展库的编译环境的,成功的安装将创建 extname.so 并放置于 PHP 的扩展库目录中。需要调整 php.ini,加入 extension=extname.so 这一行之后才能使用此扩展库。

    而eaccelerator的编译需要使用这个命令:

以下是引用片段:

[root@login eaccelerator-0.9.5.2]# /usr/local/bin/phpize
Configuring for:
PHP Api Version:         20041225
Zend Module Api No:      20050922
Zend Extension Api No:   220051025

    五:编译eaccelerator

以下是引用片段:

[root@login eaccelerator-0.9.5.2]# ./configure --enable-eaccelerator=shared --with-php-config=/usr/local/bin/php-config
[root@login eaccelerator-0.9.5.2]# make
[root@login eaccelerator-0.9.5.2]# make install
Installing shared extensions:     /usr/local/lib/php/extensions/no-debug-non-zts-20050922/

    注意上面的“Installing shared extensions”的地址,这是phpize告诉我们的扩展库的地址。如下:

以下是引用片段:

[root@login eaccelerator-0.9.5.2]# ls -l  /usr/local/lib/php/extensions/no-debug-non-zts-20050922/
total 768
-rwxr-xr-x  1 root root 425775 Oct 26 11:28 eaccelerator.so
-rwxr-xr-x  1 root root  78031 Jan 22  2007 memcache.so
-rwxr-xr-x  1 root root  26273 Oct 10 11:55 String2Int.so

    六:以下安装为PHP扩展

以下是引用片段:

[root@login eaccelerator-0.9.5.2]# find / -name php.ini
/usr/local/lib/php.ini

    修改php.ini文件,加入:(注意extension的地址)

以下是引用片段:

[eaccelerator]
extension="/usr/local/lib/php/extensions/no-debug-non-zts-20050922/eaccelerator.so"
eaccelerator.shm_size="32"
eaccelerator.cache_dir="/data1/apache/sso/cache-eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="0"
eaccelerator.compress_level="9"

    七:重启apache

以下是引用片段:

[root@login eaccelerator-0.9.5.2]# /data1/apache/bin/apachectl stop
/data1/apache/bin/apachectl stop: httpd stopped
[root@login eaccelerator-0.9.5.2]# /data1/apache/bin/apachectl startssl
/data1/apache/bin/apachectl start: httpd started

    注意:
    1 : 使用ssl 443端口,启动时:/data1/apache/bin/apachectl startssl
    2 : 定期清理cache-eaccelerator,如果是把cache-eaccelerator下的目录也删除,则需要重启apache,否则会出现异常。(具体什么异常需要测试)