Ondřej Surý 的 PHP PPA 为 Ubuntu 16.04/14.04 提供了 PHP7.2 版本,软件源安装的 PHP 默认以 Unix Socket 的状态运行在 /run/php/php7.2-fpm.sock,比使用 TCP 以 localhost:9000 的方式性能更好。

1、安装软件源拓展工具:

apt -y install software-properties-common apt-transport-https lsb-release ca-certificates

2、添加PHP PPA 源 并更新缓存

add-apt-repository ppa:ondrej/php & apt update

3、安装php7.2及基础相关拓展

apt install php7.2-fpm php7.2-mysql php7.2-curl php7.2-gd php7.2-mbstring php7.2-xml php7.2-xmlrpc php7.2-zip php7.2-opcache php7.2-dev -y

4、查看当前PPA源有哪些可供直接安装的源

apt-cache search php7.2
php-radis - radis client library for PHP
php-http - PECL HTTP module for PHP Extended HTTP Support
php-uploadprogress - file upload progress tracking extension for PHP
php-yaml - YAML-1.1 parser and emitter for PHP
php-mongodb - MongoDB driver for PHP
php-apcu - APC User Cache for PHP
php-imagick - Provides a wrapper to the ImageMagick library
php-ssh2 - Bindings for the libssh2 library
php-redis - PHP extension for interfacing with Redis
php-memcached - memcached extension module for PHP, uses libmemcached
php-apcu-bc - APCu Backwards Compatibility Module
php-rrd - PHP bindings to rrd tool system
php-uuid - PHP UUID extension
php-memcache - memcache extension module for PHP
php-zmq - ZeroMQ messaging bindings for PHP
php-igbinary - igbinary PHP serializer
php-msgpack - PHP extension for interfacing with MessagePack
php-geoip - GeoIP module for PHP
php-tideways - Tideways PHP Profiler Extension
php-yac - YAC (Yet Another Cache) for PHP
php-mailparse - Email message manipulation for PHP
php-oauth - OAuth 1.0 consumer and provider extension
php-gnupg - PHP wrapper around the gpgme library
php-propro - propro module for PHP
php-raphf - raphf module for PHP
php-solr - PHP extension for communicating with Apache Solr server
php-stomp - Streaming Text Oriented Messaging Protocol (STOMP) client module for PHP
php-gearman - PHP wrapper to libgearman
php-phalcon - full-stack PHP framework delivered as a C-extension
php-ds - PHP extension providing efficient data structures for PHP 7
php-sass - PHP bindings to libsass - fast, native Sass parsing in PHP
php-lua - PHP Embedded lua interpreter
libapache2-mod-php7.2 - server-side, HTML-embedded scripting language (Apache 2 module)
libphp7.2-embed - HTML-embedded scripting language (Embedded SAPI library)
php7.2-bcmath - Bcmath module for PHP
php7.2-bz2 - bzip2 module for PHP
php7.2-cgi - server-side, HTML-embedded scripting language (CGI binary)
php7.2-cli - command-line interpreter for the PHP scripting language
php7.2-common - documentation, examples and common module for PHP
php7.2-curl - CURL module for PHP
php7.2-dba - DBA module for PHP
php7.2-dev - Files for PHP7.2 module development
php7.2-enchant - Enchant module for PHP
php7.2-fpm - server-side, HTML-embedded scripting language (FPM-CGI binary)
php7.2-gd - GD module for PHP
php7.2-gmp - GMP module for PHP
php7.2-imap - IMAP module for PHP
php7.2-interbase - Interbase module for PHP
php7.2-intl - Internationalisation module for PHP
php7.2-json - JSON module for PHP
php7.2-ldap - LDAP module for PHP
php7.2-mbstring - MBSTRING module for PHP
php7.2-mysql - MySQL module for PHP
php7.2-odbc - ODBC module for PHP
php7.2-opcache - Zend OpCache module for PHP
php7.2-pgsql - PostgreSQL module for PHP
php7.2-phpdbg - server-side, HTML-embedded scripting language (PHPDBG binary)
php7.2-pspell - pspell module for PHP
php7.2-readline - readline module for PHP
php7.2-recode - recode module for PHP
php7.2-snmp - SNMP module for PHP
php7.2-soap - SOAP module for PHP
php7.2-sqlite3 - SQLite3 module for PHP
php7.2-sybase - Sybase module for PHP
php7.2-tidy - tidy module for PHP
php7.2-xml - DOM, SimpleXML, WDDX, XML, and XSL module for PHP
php7.2-xmlrpc - XMLRPC-EPI module for PHP
php7.2-zip - Zip module for PHP
php7.2-xsl - XSL module for PHP (dummy)
php7.2 - server-side, HTML-embedded scripting language (metapackage)
php7.2-sodium - libsodium module for PHP

5、选择安装 redis igbinary pear扩展

php7后每个扩展都是一个独立的ini文件
本次安装的php扩展都在/etc/php/7.2/mods-available下

apt install php-redis php-igbinary php-pear
ls /etc/php/7.2/mods-available
calendar.ini fileinfo.ini igbinary.ini opcache.ini readline.ini
sysvmsg.ini xml.ini zip.ini ctype.ini ftp.ini
json.ini pdo.ini redis.ini
sysvsem.ini xmlreader.ini
curl.ini gd.ini mbstring.ini pdo_mysql.ini shmop.ini
sysvshm.ini xmlrpc.ini
dom.ini gettext.ini mysqli.ini phar.ini simplexml.ini
tokenizer.ini xmlwriter.ini
exif.ini iconv.ini mysqlnd.ini posix.ini sockets.ini
wddx.ini xsl.ini

6、安装nghttp2库

apt install nghttp2 libnghttp2-dev

7、安装redis官方异步拓展hiredis,如报错需要增加系统gcc支持

git clone https://github.com/redis/hire...
cd hiredis
make -j
如果报错 尝试安装gcc
apt install gcc
重新编译
make -j
make install
ldconfig

8、swoole拓展编译安装,不推荐使用pecl install swoole

pecl的安装方式没有编译http2与hiredis支持
gcc-4.4 或更高版本
make
autoconf
pcre (centos系统可以执行命令:yum install pcre-devel)

git clone https://gitee.com/swoole/swoo...
cd swoole
phpize
./configure --enable-http2 --enable-async-redis
make && make install

9、添加swoole扩展到php环境中

echo 'extension=swoole.so' >> /etc/php/7.2/mods-available/swoole.ini
cd /etc/php/7.2/cli/conf.d/ && ln -s ../../mods-available/swoole.ini 20-swoole.ini
cd /etc/php/7.2/fpm/conf.d/ && ln -s ../../mods-available/swoole.ini 20-swoole.ini

10、查看是否引用成功

php --ri swoole
swoole support => enabled
Version => 2.1.2-alpha
Author => tianfeng.han[email: mikan.tenny@gmail.com]
coroutine => enabled
epoll => enabled
eventfd => enabled
timerfd => enabled
signalfd => enabled
cpu affinity => enabled
spinlock => enabled
rwlock => enabled
async redis client => enabled
async http/websocket client => enabled
openssl => enabled
http2 => enabled
Linux Native AIO => enabled
pcre => enabled
mutex_timedlock => enabled
pthread_barrier => enabled
futex => enabled

Directive => Local Value => Master Value
swoole.aio_thread_num => 2 => 2
swoole.display_errors => On => On
swoole.use_namespace => On => On
swoole.use_shortname => On => On
swoole.fast_serialize => Off => Off
swoole.unixsock_buffer_size => 8388608 => 8388608

至此完整全部完成

swoole安装全纪录相关推荐

  1. 基因结构注释软件PASA安装全纪录

    PASA安装 官方网址 https://github.com/PASApipeline/PASApipeline/wiki 登录mysql,创建用户 create a user/password wi ...

  2. RHEL 5.4 下安装和使用 ntop 全纪录(ntop:Linux下可通过Web访问的网络流量监控工具)...

    RHEL 5.4 下安装和使用 ntop 全纪录 1. ntop介绍 Ntop是一种监控网络流量工具,用ntop显示网络的使用情况比其他一些网络管理软件更加直观.详细.Ntop甚至可以列出每个节点计算 ...

  3. swagger 返回json字符串_Net Core微服务入门全纪录(完结)——Ocelot与Swagger

    前言 上一篇[.Net Core微服务入门全纪录(八)--Docker Compose与容器网络]完成了docker-compose.yml文件的编写,最后使用docker compose的一个up指 ...

  4. .net core ocelot 获取路由的mothed_Net Core微服务入门全纪录(四)Ocelot网关(上)

    上一篇[.Net Core微服务入门全纪录(三)--Consul-服务注册与发现(下)]已经使用Consul完成了服务的注册与发现,实际中光有服务注册与发现往往是不够的,我们需要一个统一的入口来连接客 ...

  5. .Net Core微服务入门全纪录(完结)——Ocelot与Swagger

    点击上方蓝字"小黑在哪里"关注我吧 前言 上一篇[.Net Core微服务入门全纪录(八)--Docker Compose与容器网络]完成了docker-compose.yml文件 ...

  6. lnmp + swoole 安装

    nginx地址:http://120.52.51.16/nginx.org/download/nginx-1.15.7.tar.gz PHP地址:http://am1.php.net/distribu ...

  7. 更换内存条、固态硬盘、双系统配置全纪录

    联想IdeaPad 310S更换内存条.固态硬盘.双系统配置全纪录 一.更换内存条 二.更换固态 三.重装windows10系统 1.准备工作 2.注意事项 3.制作启动盘 四.加装ubuntu16. ...

  8. swoole安装基本配置

    php安装swoole 1. 下载swoole安装 ``` wget http://pecl.php.net/get/swoole-1.9.1.tgz tar -zxvf swoole-1.9.1.t ...

  9. Swoole安装步骤

    参考:https://www.jianshu.com/p/fa2cbf1a9e26 1.更新源 yum update 2.安装pecl(默认安装 php7.2 没有pecl,如果已经安装可忽略) yu ...

最新文章

  1. __init__在python中的用法知乎_python使用selenium爬虫知乎的方法示例
  2. 【调参实战】那些优化方法的性能究竟如何,各自的参数应该如何选择?
  3. 现金流量表整理及开发
  4. df -h 显示100%的解决办法
  5. 流传在程序员中的传说,你知道几个?
  6. linux---谈谈vfork和fork的区别及exit与return
  7. JSON(JavaScript Object Notation) 格式
  8. Hbase二级索引 Solr 异常 The most likely cause is another Solr server (or another solr core in this server)
  9. Unity 下载存档
  10. 中概股暴跌后的大厂员工:230万缩水至23万、和家人一起“开源节流”
  11. mysql 字段值保留2位小数
  12. 阿里云因 bug 禁用内部 IP 导致链路不通,造成大规模故障
  13. Json工具 将对象转换为json格式字符串
  14. aws ssh 证书配置_在AWS Lambda中运行netflix bless ssh证书颁发机构
  15. 好用的浏览器主页有哪些?
  16. [CMU 15-445] 17 两阶段封锁协议
  17. 雅诗兰黛公司选出董事会新成员
  18. 携程 Apollo 配置中心 | 学习笔记(七) | 如何将配置文件敏感信息加密?
  19. 自动化改造要想取得最大效益,要搞清这几个问题!
  20. 《Scanner的hasNext、hasNextInt用法》

热门文章

  1. java字符串格式化:String.format()方法的使用
  2. Java 基本数据类型 sizeof 功能
  3. python numpy的部分函数
  4. 反向传播BP 算法之一种直观的解释
  5. 高等数学:第六章 定积分的应用(1)定积分的应用 平面图形的面积 立体体积
  6. 直方图应用:直方图均衡化,直方图匹配,对比直方图
  7. 鸟哥的Linux私房菜(基础篇)-第三章、主机规划与磁盘分区(三.4. 重点回顾)
  8. 12.6 Nginx安装 12.7 默认虚拟主机 12.8 Nginx用户认证 12.9 Nginx
  9. web前端攻城狮整理的收藏夹
  10. ArcGIS Server开发教程系列(3)切片