linux下安装php的swoole扩展模块(安装后php加载不出来?)
应开发同事要求,需要安装php的扩展模块swoole。 swoole是一种PHP高级Web开发框架,框架不是为了提升网站的性能,而是为了提升网站的开发效率,以最少的性能损耗,换取最大的开发效率。
假设服务器上php服务版本为php5.6.26,安装目录为/Data/app/php5.6.26,扩展模块文件路径为/Data/app/php5.6.26/lib/php/extensions/no-debug-non-zts-20131226/ 安装php的扩展模块要注意以下几点: 1)扩展模块的下载包要是最新版的,并且是稳定版的,低版本或bata版本的安装后,php可能加载不起来。 2)当本地服务器上有多个php版本时,扩展模块在编译时一定要加上--with-php-config=/Data/app/php5.6.26/bin/php-config,否则会出现诸如PHP Warning: PHP Startup: swoole: Unable to initialize module...类的报错; 3)扩展模块编译后的.so文件(make && make install后的安装信息里会显示)一定要确保在扩展文件目录/Data/app/php5.6.26/lib/php/extensions/no-debug-non-zts-20131226/下面。如果不在,就手动拷贝! 4)最后别忘了重启php-fpm服务 5)php -m就能列出php的所有加载后的扩展模块
swoole扩展模块的安装有以下两种方式: 第一种:编译安装(swoole官网下载:http://pecl.php.net/package/swoole) [root@dev ~]# cd /usr/local/src [root@dev src]# wget http://pecl.php.net/get/swoole-1.9.3.tgz [root@dev src]# tar -zvxf swoole-1.9.3.tgz [root@dev src]# cd swoole-1.9.3
[root@dev swoole-1.9.3]# /Data/app/php5.6.26/bin/phpize [root@dev swoole-1.9.3]# ./configure --with-php-config=/Data/app/php5.6.26/bin/php-config [root@dev swoole-1.9.3]# make && make install ........... ........... more information, such as the ld(1) and ld.so(8) manual pages. ----------------------------------------------------------------------
Build complete. Don't forget to run 'make test'.
Installing shared extensions: /Data/app/php5.6.26/lib/php/extensions/no-debug-non-zts-20131226/
然后在php.ini里配置 [root@dev swoole-1.9.3]# vim /Data/app/php5.6.26/etc/php.ini ..... extension="/Data/app/php5.6.26/lib/php/extensions/no-debug-non-zts-20131226/swoole.so"
重启php-fpm服务 [root@dev swoole-1.9.3]# pkill -9 php-fpm [root@dev swoole-1.9.3]# /Data/app/php5.6.26/sbin/php-fpm
最后查看php加载的扩展模块: [root@dev swoole-1.9.3]# /Data/app/php5.6.26/bin/php -m ............ swoole
第二种安装方法(推荐这种方法): 除了第一种的手工下载编译swoole以外,还可以通过PHP官方提供的pecl命令,一键下载安装swoole [root@dev ~]# /Data/app/php5.6.26/bin/pecl install swoole ................ Build process completed successfully Installing '/Data/app/php5.6.26/lib/php/extensions/no-debug-non-zts-20131226/swoole.so' .........
确保产生的swoole.so文件在/Data/app/php5.6.26/lib/php/extensions/no-debug-non-zts-20131226下面(不在的话,就手动拷贝) 然后在php.ini文件里添加extension="/Data/app/php5.6.26/lib/php/extensions/no-debug-non-zts-20131226/swoole.so" 然后重启php-fpm加载swoole扩展模块即可。 使用/Data/app/php5.6.26/bin/php -m 命令查看加载的模块
- Redis 在Centos Linux 上的启动脚本
- 理解JavaScript的临时包装对象
- JavaScript实现私有属性
- 使用LRU算法缓存图片,android 3.0
- 深入理解JavaScript原型:prototype,__proto__和constructor
- Comparable 与 Comparator 浅析
- 必应首页平铺背景图片的实现方案
- 我们是如何优化HAProxy以让其支持200万个并发SSL连接的?
- 【译】《Understanding ECMAScript6》- 第八章-Module
- 【译】《Understanding ECMAScript6》- 第七章-Promise
- 自定义gradview
- Redis 起步
- JVM参数详解及OOM
- 【译】《Understanding ECMAScript6》- 第五章-Class
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Android Drawerlayout实现侧滑菜单效果
- 分割等和子集
- LeetCode--打家劫舍问题
- Android 中ListView和GridView赋值错位
- 谈谈类加载器
- Android中AlarmManager+Notification实现定时通知提醒功能
- Java垃圾回收相关面试题
- Android中backgroundDimEnabled的作用
- 甲基化相关的习题背景补充
- Android 完全退出的实例详解
- Android 双击Back键退出应用的实现方法
- 2020最全Java面试题--基础篇
- Android开发之背景动画简单实现方法
- 15.深入k8s:Event事件处理及其源码分析
- 说一说 HashMap 底层数据结构