在PHP 7下安装Swoole与Yar,Yaf的方法教程


Posted in PHP onJune 02, 2017

本文开发坏境:

  • CentOS 7
  • PHP 7.0.16

安装PECL

//php版本 > 7
$ wget http://pear.php.net/go-pear.phar
$ php go-pear.phar
//php版本 < 7
$ yum install php-pear
//否则会报错PHP Parse error: syntax error, unexpected //'new' (T_NEW) in /usr/share/pear/PEAR/Frontend.php on //line 91

安装swoole

$ sudo pecl install swoole
//报错如下
//Warning: Invalid argument supplied for foreach() in //Command.php on line 249
vi `which pecl`
//找到最后一行
exec $PHP -C -n -q $INCARG -d date.timezone=UTC -d output_buffering=1 -d variables_order=EGPCS -d safe_mode=0 -d register_argc_argv="On" $INCDIR/peclcmd.php "$@"
去掉 -n 标示
//报错如下
//running: phpize
//Can't find PHP headers in /usr/include/php
//安装 php-devel
sudo yum install php70w-devel
成功!
//Build process completed successfully
//Installing '/usr/lib64/php/modules/swoole.so'
//install ok: channel://pecl.php.net/swoole-1.9.8

配置 php.ini

$ php -i | grep php.ini
//修改或者添加
 extension=swoole.so

安装 Yar和Yaf

$ sudo ./pecl install msgpack
//pecl/yar requires PHP (version >= 5.2.0, version <= 5.6.99), installed version is 7.0.16
//注意PHP7,要使用yar-2.0.2
$ sudo ./pecl install yar-2.0.2 //注意yar-2.0.2版本
//添加,json.so 要放到前面。否则会报
//PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/yar.so' - /usr/lib64/php/modules/yar.so: undefined symbol: php_json_decode_ex in Unknown on line 0
extension=json.so //放前面
extension=msgpack.so
extension=yar.so
//重启php服务
sudo systemctl restart php-fpm.service
//其他报错
//perl: warning: Setting locale failed.
//perl: warning: Please check that your locale //settings:
// LANGUAGE = (unset),
// LC_ALL = (unset),
 // LANG = "en_US.UTF-8"
 
$ localedef -v -c -i en_US -f UTF-8 en_US.UTF-8
//其他报错
//checking for cURL in default path... not found
//configure: error: Please reinstall the libcurl distribution - easy.h should be in <curl-dir>/include/curl/
$ sudo yum -y install curl-devel
//安装Yaf
$ sudo ./pecl install yaf
//更新php.ini
extension=yaf.so
//重启服务
$ sudo systemctl restart php-fpm.service
//安装脚手架
$ git clone http://pecl.php.net/package/yaf
$ cd php-yaf/tools/cg
$ php yaf-cg app
//配置 项目目录指向 app/index.php
//访问配置host

nginx 配置

server {
 listen ****;
 server_name domain.com;
 root document_root;
 index index.php index.html index.htm;
 
 if (!-e $request_filename) {
 rewrite ^/(.*) /index.php/$1 last;
 }
}

Enjoy it!

在PHP 7下安装Swoole与Yar,Yaf的方法教程

在PHP 7下安装Swoole与Yar,Yaf的方法教程

在PHP 7下安装Swoole与Yar,Yaf的方法教程

在PHP 7下安装Swoole与Yar,Yaf的方法教程

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
PHP安装攻略:常见问题解答(一)
Oct 09 PHP
Base64在线编码解码实现代码 演示与下载
Jan 08 PHP
PHP和Mysqlweb应用开发核心技术 第1部分 Php基础-1 开始了解php
Jul 03 PHP
Could not load type System.ServiceModel.Activation.HttpModule解决办法
Dec 29 PHP
php获取$_POST同名参数数组的实现介绍
Jun 30 PHP
单台服务器的PHP进程之间实现共享内存的方法
Jun 13 PHP
php显示指定目录下子目录的方法
Mar 20 PHP
php文件管理基本功能简单操作
Jan 16 PHP
PHP进制转换实例分析(2,8,16,36,64进制至10进制相互转换)
Feb 04 PHP
LAMP环境使用Composer安装Laravel的方法
Mar 25 PHP
PHP和MYSQL实现分页导航思路详解
Apr 11 PHP
laravel 修改记住我功能的cookie保存时间的方法
Oct 14 PHP
Yii2中简单的场景使用介绍
Jun 02 #PHP
Yii 2.0中场景的使用教程
Jun 02 #PHP
详解PHP5.6.30与Apache2.4.x配置
Jun 02 #PHP
php使用PDO从数据库表中读取数据的实现方法(必看)
Jun 02 #PHP
php从数据库中读取特定的行(实例)
Jun 02 #PHP
php获取数据库结果集方法(推荐)
Jun 01 #PHP
php获取数据库中数据的实现方法
Jun 01 #PHP
You might like
php 保留小数点
2009/04/21 PHP
php学习笔记(三)操作符与控制结构
2011/08/06 PHP
浅谈Laravel中的一个后期静态绑定
2017/08/11 PHP
php ajax confirm 删除实例详解
2019/03/06 PHP
javascript 对表格的行和列都能加亮显示
2008/12/26 Javascript
jquery使用jquery.zclip插件复制对象的实例教程
2013/12/04 Javascript
node.js中实现同步操作的3种实现方法
2014/12/05 Javascript
网络传输协议(http协议)
2016/11/18 Javascript
Angular中$state.go页面跳转并传递参数的方法
2017/05/09 Javascript
详解webpack require.ensure与require AMD的区别
2017/12/13 Javascript
Vue多组件仓库开发与发布详解
2019/02/28 Javascript
小程序云开发如何实现图片上传及发表文字
2019/05/17 Javascript
JS实现返回上一页并刷新页面的方法分析
2019/07/16 Javascript
微信小程序中的列表切换功能实例代码详解
2020/06/09 Javascript
JS实现炫酷轮播图
2020/11/15 Javascript
python 判断一个进程是否存在
2009/04/09 Python
Python Web框架Pylons中使用MongoDB的例子
2013/12/03 Python
Python中用Decorator来简化元编程的教程
2015/04/13 Python
python实现在每个独立进程中运行一个函数的方法
2015/04/23 Python
Python列表list内建函数用法实例分析【insert、remove、index、pop等】
2017/07/24 Python
TensorFlow深度学习之卷积神经网络CNN
2018/03/09 Python
Python将图片转换为字符画的方法
2020/06/16 Python
python实现校园网自动登录的示例讲解
2018/04/22 Python
Python中矩阵创建和矩阵运算方法
2018/08/04 Python
Django migrations 默认目录修改的方法教程
2018/09/28 Python
Django网络框架之创建虚拟开发环境操作示例
2019/06/06 Python
python 两种方法删除空文件夹
2020/09/29 Python
Python实现JS解密并爬取某音漫客网站
2020/10/23 Python
Django restful framework生成API文档过程详解
2020/11/12 Python
乌克兰电子产品和家用电器购物网站:TOUCH
2019/08/09 全球购物
局部内部类是否可以访问非final变量?
2013/04/20 面试题
判缓刑人员个人思想汇报
2014/10/10 职场文书
董事长岗位职责
2015/02/13 职场文书
鲁滨孙漂流记读书笔记
2015/06/30 职场文书
MySQL中InnoDB存储引擎的锁的基本使用教程
2021/05/26 MySQL
MySQL如何使备份得数据保持一致
2022/05/02 MySQL