安装环境
- CentOS 7
- PHP 7.2.30
可以提前安装如下软件,也可以根据安装PHP和Swoole中出现需要的软件再安装
1 | # yum -y install gcc gcc-c++ autoconf automake make libxml2 libxml2-devel |
源码安装PHP
使用Swoole扩展需要PHP7.1以上的版本,我在PHP官网下载的是PHP7.2.30版本
1 | # cd /usr/local/src |
解压PHP并进入解压后的文件夹中
1 | # tar -zxvf php-7.2.30.tar.gz |
配置、编译和安装PHP(我把PHP安装目录自定义了)
1 | # ./configure --prefix=/usr/local/php72 |
编辑 ~/.bash_profile
文件,把 alias php=/usr/local/php72/bin/php
添加到最后一行
1 | # vim ~/.bash_profile |
查看PHP的.ini文件有效位置
1 | # php -i | grep php.ini |
把解压文件夹中的 php.ini-development 复制到 PHP的.ini文件有效位置
1 | # cp /usr/local/src/php-7.2.30/php.ini-development /usr/local/php72/lib/php.ini |
源码安装Swoole
选择需要的Swoole版本进行下载,我是用的是4.4.x
,可以使用git和下载zip,我是下载的zip
1 | # cd /usr/local/src |
解压并进去解压后的文件夹
1 | # unzip v4.4.x.zip |
使用PHP的phpize进行处理,然后生成configure文件
1 | # /usr/local/php72/bin/phpize |
配置Swoole
1 | # ./configure --with-php-config=/usr/local/php72/bin/php-config |
然后编译和安装Swoole
1 | # make && make install |
会提示Swoole扩展安装目录为
1 | ## /usr/local/php72/lib/php/extensions/no-debug-non-zts-**** |
开启Swoole扩展
打开php的配置文件
1 | # vim /usr/local/php72/lib/php.ini |
添加如下信息,其中 no-debug-non-zts-20170718
文件夹名称根据实际情况可能不同
1 | [swoole] |
查看php的扩展中是否有Swoole
1 | # php -m |
查看Swoole是否可用,打开Swoole解压文件夹,找到 examples
中的server
中的 echo.php
,这个文件打开的是9501端口,执行这歌文件
1 | # /usr/local/src/swoole-src-4.4.x/examples/server |
另起一个终端,查看9501端口是否被使用
1 | # netstat -anp | grep 9501 |
ctrl
+ c
终止 echo.php
文件,然后再查看9501端口
1 | # netstat -anp | grep 9501 |