PHP Swoole 开发 教程一 (swoole 开发环境安装)

安装环境
  • centos 7.4
  • php 7.2.4
  • swoole 2.1.1

在接下来中我将使用安装有centos7.4系统的京东云主机来为大家演示,ps:建议大家使用京东云来练手安装,毕竟新手注册免费送一个月云主机


  • 代码包如下所示
[root@JD ~]# pwd
/root
[root@JD ~]# ls
mysoft  work
[root@JD ~]# cd mysoft/
[root@JD mysoft]# ls
php-7.2.4.tar.bz2  swoole-swoole-v2.1.1.zip
[root@JD mysoft]#

  • 源码安装 php

    • tar -jxvf php-7.2.4.tar.bz2 命令解压 php-7.2.4.tar.bz2 目录
    • cd php-7.2.4/ 进入 php-7.2.4.tar.bz2 目录
    • mkdir /usr/local/src/php7.2.4 新建 php 安装目录
    • ./configure --prefix=/usr/local/src/php7.2.4 检查配置 (如果需要使用 php-fpm 可以再后面添加 --enable-fpm 因为swoole是在cli下运行的 使用我们没有添加)

      • 如果报下面的错 是因为没有安装 gcc 使用 yum install gcc* 安装即可

        checking for cc... no
        checking for gcc... no
        configure: error: in `/root/mysoft/php-7.2.4':
        configure: error: no acceptable C compiler found in $PATH
        See `config.log' for more details
      • 如果报 error: libxml2 not found
        rpm -qa |grep libxml2 检查是否安装了libxm包
        如果安装了 就直接 yum install libxml2-devel
        如果没有 先 yum install libxml2yum install libxml2-devel

    • make && make install 进行编译 时间会比较长

    • 下面我们来测试一下 创建一个 hello.php 内容为输出 hello world!

    [root@JD ~]# vim hello.php
    [root@JD ~]# /usr/local/src/php7.2.4/bin/php hello.php 
    hello world!
    [root@JD ~]#

    运行成功


  • 改进一下 如果我们直接使用 php hello.php 系统会报错 -bash: php: command not found
    vim ~/.bash_profile 如下添加 php 别名即可

    export PATH
    alias php=/usr/local/src/php7.2.4/bin/php

    别忘了再 source ~/.bash_profile 一下
    现在就可以直接使用 php hello.php 运行 php 代码了

  • 现在你可能觉得你的php已经安装成功了 但是你会发现一个致命问题 你找不到php.ini 文件

    [root@JD ~]# find / -name php.ini
    [root@JD ~]#

    源码安装的话我们需要把 源码包里的 php.ini 文件拷贝到我们的安装目录
    拷贝到哪里呢 这时我们可以使用命令 php -i |grep php.ini

    [root@JD php-7.2.4]# php -i |grep php.ini
    Configuration File (php.ini) Path => /usr/local/src/php7.2.4/lib

我们可以看见需要我们拷贝到 lib 目录
使用 命令 cp php.ini-development /usr/local/src/php7.2.4/lib/php.ini
拷贝成功

  • 至此 我们的 php 7.2.4 已经完全安装成功了

  • 源码安装swoole

    • unzip swoole-swoole-v2.1.1.zip 解压 swoole
    • cd swoole/ 进入swoole 目录
    • /usr/local/src/php7.2.4/bin/phpize 生成 configure 文件
      • 如果报错 Cannot find autoconf. 使用命令 yum install autoconf 安装即可
    • make && make install 进行编译
    • 编译完成后 在 php.ini 的最后一行加上 extension=swoole.so
    • php -m |grep swoole 查找 swoole 是否安装成功
    [root@JD lib]# php -m |grep swoole
    swoole
    • swoole 安装成功

  • 尝试结合php使用swoole

  • swoole 的源码包中有很多swoole的demo 例如 swoole/examples/server 目录下有一个 echo.php

  • echo.php 开启了tcp 服务并监听了 9501 端口
  • netstat -anp |grep 9501 我们查看9501端口现在没有被占用

    [root@JD lib]# netstat -anp |grep 9501
    [root@JD lib]#
  • php echo.php 现在我们运行 echo.php

  • 再次查看9501端口已经被 php 占用了

    [root@JD lib]# netstat -anp |grep 9501
    tcp        0      0 0.0.0.0:9501            0.0.0.0:*               LISTEN      27728/php
  • 现在我们的swoole的一个简单的服务就被我们开启了

  • 以后就可以愉快的使用swoole进行开发了

你可能感兴趣的:(php7,swoole)