在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 数组排序方法总结 推荐收藏
Jun 30 PHP
PHP中PDO基础教程 入门级
Sep 04 PHP
php环境配置之CGI、FastCGI、PHP-CGI、PHP-FPM、Spawn-FCGI比较?
Oct 17 PHP
php中替换字符串中的空格为逗号','的方法
Jun 09 PHP
Codeigniter中mkdir创建目录遇到权限问题和解决方法
Jul 25 PHP
迪菲-赫尔曼密钥交换(Diffie?Hellman)算法原理和PHP实现版
May 12 PHP
PHP实现操作redis的封装类完整实例
Nov 14 PHP
windows平台中配置nginx+php环境
Dec 06 PHP
PHP XML和数组互相转换详解
Oct 26 PHP
PHP抽象类与接口的区别实例详解
May 09 PHP
thinkphp框架使用JWTtoken的方法详解
Oct 10 PHP
解决PHPstudy Apache无法启动的问题【亲测有效】
Oct 30 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无敌近乎加密方式!
2010/07/17 PHP
php 检查电子邮件函数(自写)
2014/01/16 PHP
THinkPHP获取客户端IP与IP地址查询的方法
2016/11/14 PHP
php中html_entity_decode实现HTML实体转义
2018/06/13 PHP
一种JavaScript的设计模式
2006/11/22 Javascript
javaScript中with函数用法实例分析
2015/06/08 Javascript
详解JavaScript中的表单验证
2015/06/16 Javascript
javascript比较两个日期相差天数的方法
2015/07/23 Javascript
使用Chart.js图表库制作漂亮的响应式表单
2015/10/28 Javascript
js文本框输入内容智能提示效果
2015/12/02 Javascript
使用jQuery Mobile框架开发移动端Web App的入门教程
2016/05/17 Javascript
学习Angular中作用域需要注意的坑
2016/08/17 Javascript
微信小程序 实现tabs选项卡效果实例代码
2016/10/31 Javascript
JS实现页面跳转参数不丢失的方法
2016/11/28 Javascript
vue v-on监听事件详解
2017/05/17 Javascript
详谈Node.js之操作文件系统
2017/08/29 Javascript
浅谈Webpack 是如何加载模块的
2018/05/24 Javascript
vue.js项目 el-input 组件 监听回车键实现搜索功能示例
2018/08/25 Javascript
Vue框架里使用Swiper的方法示例
2018/09/20 Javascript
js实现图片局部放大效果详解
2019/03/18 Javascript
vue路由传参页面刷新参数丢失问题解决方案
2019/10/08 Javascript
JavaScript中数组去重的5种方法
2020/07/04 Javascript
Javascript新手入门之字符串拼接与变量的应用
2020/12/03 Javascript
使用JS实现鼠标放上图片进行放大离开实现缩小功能
2021/01/27 Javascript
[12:29]2018国际邀请赛 开幕秀
2018/08/22 DOTA
30分钟搭建Python的Flask框架并在上面编写第一个应用
2015/03/30 Python
Python常见的pandas用法demo示例
2019/03/16 Python
java关于string最常出现的面试题整理
2021/01/18 Python
pytorch 实现L2和L1正则化regularization的操作
2021/03/03 Python
北美最大的零售退货翻新商:VIP Outlet
2019/11/21 全球购物
个人培训自我鉴定
2014/03/28 职场文书
2015年党员个人剖析材料
2014/12/18 职场文书
2015年见习期个人工作总结
2015/05/28 职场文书
复活读书笔记
2015/06/29 职场文书
诗词赏析-(浣溪沙)
2019/08/13 职场文书
javascript拖曳互换div的位置实现示例
2021/06/28 Javascript