在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常用函数的用法详解
May 10 PHP
mantis安装、配置和使用中的问题小结
Jul 14 PHP
PHP中上传多个文件的表单设计例子
Nov 19 PHP
19个Android常用工具类汇总
Dec 30 PHP
详解PHP的Yii框架中组件行为的属性注入和方法注入
Mar 18 PHP
php简单实现短网址(短链)还原的方法(测试可用)
May 09 PHP
Yii2中事务的使用实例代码详解
Sep 07 PHP
Yii2――使用数据库操作汇总(增删查改、事务)
Dec 19 PHP
php中输出json对象的值(实现方法)
Mar 07 PHP
浅析PHP7 的垃圾回收机制
Sep 06 PHP
PHP的new static和new self的区别与使用
Nov 27 PHP
php操作redis常见方法示例【key与value操作】
Apr 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包含文件函数include、include_once、require、require_once区别总结
2014/04/05 PHP
Linux中用PHP判断程序运行状态的2个方法
2014/05/04 PHP
php实现图片上传、剪切功能
2016/05/07 PHP
Zend Framework入门应用实例详解
2016/12/11 PHP
Prototype Object对象 学习
2009/07/12 Javascript
利用webqq协议使用python登录qq发消息源码参考
2013/04/08 Javascript
通用javascript代码判断版本号是否在版本范围之间
2015/11/29 Javascript
js实现字符串和数组之间相互转换操作
2016/01/12 Javascript
zTree插件下拉树使用入门教程
2016/04/11 Javascript
javascript经典特效分享 手风琴、轮播图、图片滑动
2016/09/14 Javascript
vue.js利用Object.defineProperty实现双向绑定
2017/03/09 Javascript
angularjs中ng-bind-html的用法总结
2017/05/23 Javascript
前端主流框架vue学习笔记第二篇
2017/07/26 Javascript
使用Vue-Router 2实现路由功能实例详解
2017/11/14 Javascript
详解vue-router 命名路由和命名视图
2018/06/01 Javascript
Vue实现底部侧边工具栏的实例代码
2018/09/03 Javascript
vue+mock.js实现前后端分离
2019/07/24 Javascript
vue select 获取value和lable操作
2020/08/28 Javascript
python网络编程学习笔记(七):HTML和XHTML解析(HTMLParser、BeautifulSoup)
2014/06/09 Python
Python获取任意xml节点值的方法
2015/05/05 Python
Python列出一个文件夹及其子目录的所有文件
2016/06/30 Python
使用Python对Excel进行读写操作
2017/03/30 Python
在Django中输出matplotlib生成的图片方法
2018/05/24 Python
Python去除字符串前后空格的几种方法
2019/03/04 Python
python对象与json相互转换的方法
2019/05/07 Python
Django框架封装外部函数示例
2019/05/28 Python
python3.6根据m3u8下载mp4视频
2019/06/17 Python
wxpython布局的实现方法
2019/11/01 Python
python实现控制台输出颜色
2021/03/02 Python
技校毕业生个人学习的自我评价
2014/02/21 职场文书
企业安全生产演讲稿
2014/05/09 职场文书
教师党的群众路线教育实践活动学习笔记
2014/11/05 职场文书
如何撰写出一份完美的商业计划书?
2019/07/12 职场文书
python简单验证码识别的实现过程
2021/06/20 Python
「月刊Action」2022年5月号封面公开
2022/03/21 日漫
Mac电脑OS系统下安装Nginx的详细教程
2022/04/14 Servers