设为首页 收藏本站
查看: 948|回复: 0

[经验分享] 安装PHP扩展eaccelerator加速器

[复制链接]

尚未签到

发表于 2018-12-24 09:48:40 | 显示全部楼层 |阅读模式
  软件下载地址:
  http://pan.baidu.com/share/link?shareid=1812137103&uk=1210957557
  

  注:系统已经搭建好了LAMP,上一片博客有详细文档
  

  [root@CentOS5samba]#tar zxvf eaccelerator-eaccelerator-42067ac.tar.gz -C /usr/local/src/
  [root@CentOS5samba]#cd /usr/local/src/eaccelerator-eaccelerator-42067ac/
  [root@CentOS5eaccelerator-eaccelerator-42067ac]#/usr/local/php/bin/phpize
  [root@CentOS5eaccelerator-eaccelerator-42067ac]#./configure --enable-eaccelerator=shared --with-php-config=/usr/local/php/bin/php-config
  [root@CentOS5eaccelerator-eaccelerator-42067ac]#make && make install
  make install完成后会出现eaccelerator.so路径,拷贝这个绝对路径,下面还需要用
  

  打开php.ini文件,在该文件的最后添加如下:
  [root@CentOS5eaccelerator-eaccelerator-42067ac]#vi /usr/local/php/etc/php.ini
  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.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/
  

  #启用或禁用eaccelerator1为开启,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设定的秒数时再次尝试清除过期的脚本。默认值为0eaccelerator将不从缓存中清除过期的脚本
  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"
  

  建立缓存目录并赋予权限
  [root@CentOS5eaccelerator-eaccelerator-42067ac]#mkdir -p /data/cache/eaccelerator
  [root@CentOS5eaccelerator-eaccelerator-42067ac]#chmod 777 /data/cache/eaccelerator
  

  拷贝control.php文件到网站目录下并重启apache
  [root@CentOS5eaccelerator-eaccelerator-42067ac]#cp control.php /usr/local/apache2/htdocs/
  [root@CentOS5eaccelerator-eaccelerator-42067ac]#/usr/local/apache2/bin/apachectl restart
  

  访问http://IP/control.php
  默认用户名:admin
  默认密码:eAccelerator
  登录名和密码可在control.php文件里进行修改

  

  

  安装eaccelerator过程中出现的几个错误及解决方案
  1[root@CentOS5 eaccelerator-0.9.5.3]# 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.lo
   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  -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: *** [eaccelerator.lo] 错误 1
  

  解决方案:PHP5.4不支持这个版本的eaccelerator.,重新下载一个应该就可以了
  

  2、访问control.php页面出错“eAcceleratorisn't installed or isn't compiled with info support!
  

  解决方案:vi /usr/local/php/etc/php.ini
  extension="/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/
  

  

  

  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-655142-1-1.html 上篇帖子: PHP实现邮件自动发送 下篇帖子: php追加记录到文件行首的办法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表