dlio 发表于 2013-8-21 08:56:26

安装PHP扩展eaccelerator加速器

软件下载地址:http://pan.baidu.com/share/link?shareid=1812137103&uk=1210957557
注:系统已经搭建好了LAMP,上一片博客有详细文档
#tar zxvf eaccelerator-eaccelerator-42067ac.tar.gz -C /usr/local/src/#cd /usr/local/src/eaccelerator-eaccelerator-42067ac/#/usr/local/php/bin/phpize#./configure --enable-eaccelerator=shared --with-php-config=/usr/local/php/bin/php-config#make && make installmake install完成后会出现eaccelerator.so路径,拷贝这个绝对路径,下面还需要用
打开php.ini文件,在该文件的最后添加如下:#vi /usr/local/php/etc/php.inizend_extension="/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/eaccelerator.so"eaccelerator.shm_size="16"eaccelerator.cache_dir="/data/cache/eaccelerator"eaccelerator.allowed_admin_path=/usr/local/apache2/htdocs/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="1"eaccelerator.compress_level="9"
以上参数表达的含义:# eaccelerator.so的绝对路径zend_extension="/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/eaccelerator.so"
#设置缓存大小eaccelerator.shm_size="16"
#缓存目录eaccelerator.cache_dir="/data/cache/eaccelerator"
#网站目录eaccelerator.allowed_admin_path=/usr/local/apache2/htdocs/
#启用或禁用eaccelerator,1为开启,0为禁用eaccelerator.enable="1"
#开启或关闭优化,1为开启,0为关闭eaccelerator.optimizer="1"
#在每次命中的时候Eaccelerator都会检查脚本的修改时间来判断是不是脚本发生的变化来决定是否需要重新编译,1为启用,0为禁用eaccelerator.check_mtime="1"
#开启关闭debug日志。如果设置为1,将打印很多文件命中的信息到日志中eaccelerator.debug="0"
#用来决定哪个php文件被缓存。可以通过使用通配符(比如"*.php *.phtml")来匹配需要缓存的php脚本。如果以"!"开头,表示不匹配,这个参数默认是空,可以缓存所有编译好的php脚本需要注意的是eaccelerator.filter并不是基于URL工作的,而是基于文件的绝对路径,比如定义了"!/home"的话,那所有/home目录的脚本都不会被缓存。如果要定义多个匹配,使用空格或者制表符分开,而不是逗号。eaccelerator.filter=""
#设置内存缓存可以缓存文件的最大值eaccelerator.shm_max="0"
#当eAcelerator没有空余的共享内存的时候,就会把最少shm_ttl设置的秒数没访问过的脚本从缓存中释放掉,默认值是0,表示eaccelerator不会释放任何缓存eaccelerator.shm_ttl="0"
#当没有足够的内存用来缓存的时候,eaccelerator会在上次清除缓存的时间超过了shm_prune_period设定的秒数时再次尝试清除过期的脚本。默认值为0,eaccelerator将不从缓存中清除过期的脚本eaccelerator.shm_prune_period="0"
#启用或者禁用磁盘缓存。这个选项对session数据和内容的缓存没效果。默认值是0,允许eaccelerator使用磁盘和内存进行缓存eaccelerator.shm_only="0"
#当使用eaccelerator_content_* 的api时,eA可以在缓存前对内容进行压缩。默认值为1表示启用,0为禁用eaccelerator.compress="1"
#内容缓存的压缩等级。默认值为9(最大压缩级别)eaccelerator.compress_level="9"
建立缓存目录并赋予权限#mkdir -p /data/cache/eaccelerator#chmod 777 /data/cache/eaccelerator
拷贝control.php文件到网站目录下并重启apache#cp control.php /usr/local/apache2/htdocs/#/usr/local/apache2/bin/apachectl restart
访问http://IP/control.php默认用户名:admin默认密码:eAccelerator登录名和密码可在control.php文件里进行修改

安装eaccelerator过程中出现的几个错误及解决方案1、# make && make install/bin/sh/usr/local/src/eaccelerator-0.9.5.3/libtool --mode=compile cc-I. -I/usr/local/src/eaccelerator-0.9.5.3-DPHP_ATOM_INC -I/usr/local/src/eaccelerator-0.9.5.3/include -I/usr/local/src/eaccelerator-0.9.5.3/main-I/usr/local/src/eaccelerator-0.9.5.3 -I/usr/local/php/include/php-I/usr/local/php/include/php/main -I/usr/local/php/include/php/TSRM-I/usr/local/php/include/php/Zend -I/usr/local/php/include/php/ext-I/usr/local/php/include/php/ext/date/lib -DHAVE_CONFIG_H-g -O2   -c/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c -o eaccelerator.locc-I. -I/usr/local/src/eaccelerator-0.9.5.3 -DPHP_ATOM_INC-I/usr/local/src/eaccelerator-0.9.5.3/include -I/usr/local/src/eaccelerator-0.9.5.3/main-I/usr/local/src/eaccelerator-0.9.5.3 -I/usr/local/php/include/php-I/usr/local/php/include/php/main -I/usr/local/php/include/php/TSRM-I/usr/local/php/include/php/Zend -I/usr/local/php/include/php/ext-I/usr/local/php/include/php/ext/date/lib -DHAVE_CONFIG_H -g -O2 -c/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c-fPIC -DPIC -o .libs/eaccelerator.o/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:In function ‘eaccelerator_restore’:/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:936:警告:赋值丢弃了指针目标类型的限定/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:In function ‘eaccelerator_compile_file’:/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:1272:警告:传递实参 1(属于‘eaccelerator_ok_to_cache’)丢弃了指针目标类型的限定/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:1416:错误:‘znode_op’没有名为‘op_type’的成员/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:1417:错误:‘znode_op’没有名为‘u’的成员/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:1418:错误:‘znode_op’没有名为‘u’的成员/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:1419:错误:‘znode_op’没有名为‘u’的成员/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:1420:错误:‘znode_op’没有名为‘op_type’的成员/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:1421:错误:‘znode_op’没有名为‘u’的成员/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:1433:错误:‘znode_op’没有名为‘u’的成员/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:1434:错误:‘znode_op’没有名为‘u’的成员/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:1508:错误:‘zend_class_entry’没有名为‘line_start’的成员/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:在顶层:/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:2223:错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or‘__attribute__’ before ‘eaccelerator_functions’/usr/local/src/eaccelerator-0.9.5.3/eaccelerator.c:2286:错误:‘eaccelerator_functions’未声明 (不在函数内)make: *** 错误 1
解决方案:PHP5.4不支持这个版本的eaccelerator.,重新下载一个应该就可以了
2、访问control.php页面出错“eAcceleratorisn't installed or isn't compiled with info support!”
解决方案:vi /usr/local/php/etc/php.iniextension="/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/eaccelerator.so"改为:zend_extension="/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/eaccelerator.so"
3、进入页面后,点击Script Cache按钮出现错误
解决方案:vi /usr/local/php/etc/php.ini加入:eaccelerator.allowed_admin_path=/usr/local/apache2/htdocs/



ct38 发表于 2013-8-21 11:06:49

人生不能像做菜、把所有的料都准备好才下锅!

师傅你而 发表于 2013-8-21 16:50:04

.其实我是一个天才,可惜天妒英才!

cxg518 发表于 2013-8-21 21:10:04

怀揣两块,胸怀500万!

虚幻0516 发表于 2013-8-22 00:06:26

生活***好玩,因为生活老***玩我!

师傅你而 发表于 2013-8-22 04:01:42

解释就系掩饰,掩饰等于无出色,无出色不如回家休息!!!

殇帝刘玢你 发表于 2013-8-22 14:42:18

我是来刷分的,嘿嘿
页: [1]
查看完整版本: 安装PHP扩展eaccelerator加速器