乘风原创程序

  • PHP7 安装 Swoole 教程
  • 2020/5/8 10:07:41
  • php7 源码安装

     

    步骤

    1、解压 tar -xjvf

    2、configure

    3、make

    4、make install

    安装上传下载命令

    yum install -y lrzsz
    

      

    linux 操作

    [root@vm_0_5_centos ~]# cd /home/
    
    [root@vm_0_5_centos home]# mkdir -p work/study/softpackage
    
    [root@vm_0_5_centos softpackage]# pwd
    
    /home/work/study/softpackage
    
    [root@vm_0_5_centos softpackage]# ll
    
    total 14900
    
    -rw-r--r-- 1 root root 15235268 apr  2 21:19 php-7.2.29.tar.bz2
    
    [root@vm_0_5_centos softpackage]# tar -xjvf php-7.2.29.tar.bz2
    
    drwxrwxr-x 14 root root     4096 mar 17 18:16 php-7.2.29
    
    -rw-r--r--  1 root root 15235268 apr  2 21:19 php-7.2.29.tar.bz2
    
    [root@vm_0_5_centos softpackage]# cd php-7.2.29/
    
    [root@vm_0_5_centos php-7.2.29]# yum install gcc
    
    ----
    
    configure: error: libxml2 not found. please check your libxml2 installation.
    
    ----
    
    //start安装豪华套餐
    
    yum -y install gcc libxml2 yum -y install php-mcrypt libmcrypt libmcrypt-devel autoconf freetype gd jpegsrc libmcrypt libpng libpng-devel libjpeg libxml2 libxml2-devel
    
    //end
    
    [root@vm_0_5_centos php-7.2.29]# ./configure --prefix=/home/work/study/soft/php
    
    [root@vm_0_5_centos php-7.2.29]# make
    
    [root@vm_0_5_centos php-7.2.29]# make install
    
    [root@vm_0_5_centos php-7.2.29]# cd /home/work/study/
    
    [root@vm_0_5_centos study]# ll
    
    total 8
    
    drwxr-xr-x 3 root root 4096 apr  2 22:04 soft
    
    drwxr-xr-x 3 root root 4096 apr  2 21:44 softpackage
    
    [root@vm_0_5_centos study]# cd soft/php/
    
    [root@vm_0_5_centos php]# 
    
    [root@vm_0_5_centos php]# ./bin/php -m
    
    //测试
    
    [root@vm_0_5_centos php]# vim test.php
    
    [root@vm_0_5_centos php]# ./bin/php test.php 
    
    1585836467[root@vm_0_5_centos php]# 
    
    //编辑
    
    [root@vm_0_5_centos php]# vi ~/.bash_profile
    
    # .bash_profile
    
    # get the aliases and functions
    
    if [ -f ~/.bashrc ]; then
    
     . ~/.bashrc
    
    fi
    
    # user specific environment and startup programs
    
    path=$path:$home/bin
    
    export path
    
    alias php=/home/work/study/soft/php/bin/php
    
    //让配置生效
    
    [root@vm_0_5_centos php]#  source ~/.bash_profile 
    
    [root@vm_0_5_centos php]# php -v
    
    php 7.2.29 (cli) (built: apr  2 2020 22:03:18) ( nts )
    
    copyright (c) 1997-2018 the php group
    
    zend engine v3.2.0, copyright (c) 1998-2018 zend technologies
    
    //测试
    
    [root@vm_0_5_centos study]# mkdir demo
    
    [root@vm_0_5_centos study]# cd demo/
    
    [root@vm_0_5_centos demo]# vim t.php
    
    [root@vm_0_5_centos demo]# php t.php
    
    1585836787[root@vm_0_5_centos demo]# pwd
    
    /home/work/study/demo
    

      

    转移 php.ini

    [root@vm_0_5_centos study]# cd softpackage/php-7.2.29/
    [root@vm_0_5_centos php-7.2.29]# pwd
    /home/work/study/softpackage/php-7.2.29
    [root@vm_0_5_centos php-7.2.29]# cp php.ini-development /home/work/study/soft/php/etc/
    [root@vm_0_5_centos ~]# cd /home/work/study/soft/php/etc/
    [root@vm_0_5_centos etc]# ll
    total 80
    -rw-r--r-- 1 root root  1354 apr  2 22:05 pear.conf
    -rw-r--r-- 1 root root 71232 apr  2 22:17 php.ini-development
    [root@vm_0_5_centos etc]# mv php.ini-development php.ini
    [root@vm_0_5_centos php-7.2.29]# php -i | grep php.ini
    configuration file (php.ini) path => /home/work/study/soft/php/lib
    [root@vm_0_5_centos php-7.2.29]# cd /home/work/study/soft/php/
    [root@vm_0_5_centos php]#  mv ./etc/php.ini ./lib/
    

      

    上传 swoole 文件包

    [root@vm_0_5_centos softpackage]# rz
    [root@vm_0_5_centos softpackage]# ll
    total 17076
    drwxrwxr-x 17 root root     4096 apr  2 21:55 php-7.2.29
    -rw-r--r--  1 root root 15235268 apr  2 21:19 php-7.2.29.tar.bz2
    -rw-r--r--  1 root root  2217161 apr  2 22:27 swoole-swoole-master.zip
    [root@vm_0_5_centos softpackage]# unzip swoole-swoole-master.zip 
    [root@vm_0_5_centos softpackage]# ll
    total 17080
    drwxrwxr-x 17 root root     4096 apr  2 21:55 php-7.2.29
    -rw-r--r--  1 root root 15235268 apr  2 21:19 php-7.2.29.tar.bz2
    drwxr-xr-x  9 root root     4096 jan  9 20:06 swoole
    -rw-r--r--  1 root root  2217161 apr  2 22:27 swoole-swoole-master.zip
    //生成configure文件
    [root@vm_0_5_centos swoole]# /home/work/study/soft/php/bin/phpize
    configuring for:
    php api version:         20170718
    zend module api no:      20170718
    zend extension api no:   320170718
    [root@vm_0_5_centos swoole]# ./configure --with-php-config=/home/work/study/soft/php/bin/php-config
    checking how to run the c++ preprocessor... /lib/cpp
    configure: error: in `/home/work/study/softpackage/swoole':
    configure: error: c++ preprocessor "/lib/cpp" fails sanity check
    see `config.log' for more details
    //说明
    error: c++ preprocessor "/lib/cpp" fails sanity check 问题的解决
     问题的根源是缺少必要的c++库。如果是centos系统,运行,如下命令解决:
     yum install glibc-headers
     yum install gcc-c++
    

      

    再执行

    [root@vm_0_5_centos swoole]# ./configure --with-php-config=/home/work/study/soft/php/bin/php-config
    [root@vm_0_5_centos swoole]# make
    [root@vm_0_5_centos swoole]# make install
    [root@vm_0_5_centos swoole]# cd /home/work/study/soft/php/lib/php/extensions/no-debug-non-zts-20170718/
    [root@vm_0_5_centos no-debug-non-zts-20170718]# ll
    total 17664
    -rwxr-xr-x 1 root root  3589814 apr  2 22:04 opcache.a
    -rwxr-xr-x 1 root root  1979620 apr  2 22:04 opcache.so
    -rwxr-xr-x 1 root root 12488337 apr  2 22:41 swoole.so
    [root@vm_0_5_centos lib]# ll
    total 80
    drwxr-xr-x 15 root root  4096 apr  2 22:05 php
    -rw-r--r--  1 root root 71232 apr  2 22:17 php.ini
    [root@vm_0_5_centos lib]# vi php.ini 
    [root@vm_0_5_centos lib]# pwd
    /home/work/study/soft/php/lib
    在php.ini文件中添加:extension=swoole.so
    查看是否添加成功:php -m
    [root@vm_0_5_centos server]# php echo.php 
    ^c
    [root@vm_0_5_centos server]# pwd
    /home/work/study/softpackage/swoole/examples/server
    //新开窗口
    [root@vm_0_5_centos server]# netstat -anp|grep 9501
    tcp        0      0 0.0.0.0:9501            0.0.0.0:*               listen      23406/php 
    [root@vm_0_5_centos server]# netstat -anp|grep 9501
    [root@vm_0_5_centos server]# pwd
    /home/work/study/softpackage/swoole/examples/server 
    

      

    更多学习内容请访问:

    腾讯t3-t4标准精品php架构师教程目录大全,只要你看完保证薪资上升一个台阶(持续更新)