美文网首页
[LNMPA搭建七]PHP扩展安装

[LNMPA搭建七]PHP扩展安装

作者: DD生活 | 来源:发表于2019-11-29 15:30 被阅读0次

    1、安装前言

    鄙人在教程五当中介绍了<a href="http://blog.csdn.net/sinat_22878395/article/details/60335312" target="_blank">《Nginx服务器详细【配置】》</a>在文章后有个议性说明。
    在安装好 phpMyAdmin后浏览器访问 you ip/phpMyAdmin 时报了如下错误:


    这里写图片描述

    我们的教程从这里开始 。
    如有不懂如何安装php扩展的请查看<a href="http://blog.csdn.net/sinat_22878395/article/details/60765407" target="_blank">《PHP扩展安装原理》</a>

    2、前期准备

    下载php源码并解压
    本人的下载解压地址是 /data/soft/php/php-5.6.30--code
    进入解压源码目录里面的ext目录
    cd /data/soft/php/php-5.6.30--code/ext
    

    3、mbstring扩展安装

    cd mbstring
    /data/soft/php/php5.6/bin/phpize
    ./configure --with-php-config=/data/soft/php/php5.6/bin/php-config 
    make 
    make install
    

    修改 vi /data/conf/php/php.ini里面的 extension=mysql.so 开启扩展
    重启service php-fpm restart

    继续访问 you ip/phpMyAdmin 报如下错误

    这里写图片描述

    4、安装mysql扩展和mysqli扩展

    4.1mysql扩展

    cd /data/soft/php/php-5.6.30--code/ext/mysql
    /data/soft/php/php5.6/bin/phpize
    ./configure --with-php-config=/data/soft/php/php5.6/bin/php-config --with-mysql=/data/soft/mariadb
    make
    make install
    

    修改 vi /data/conf/php/php.ini里面的 extension=mysql.so 开启扩展
    重启service php-fpm restart

    4.2mysqli扩展

    cd /data/soft/php/php-5.6.30--code/ext/mysqli
    /data/soft/php/php5.6/bin/phpize
    ./configure --with-php-config=/data/soft/php/php5.6/bin/php-config --with-mysqli=/data/soft/mariadb/bin/mysql_config
    

    参数说明:--with-mysqli mysql(mariadb)安装地址bin下的mysql_config

    出现错误 :参考地址:http://www.cnblogs.com/xiaoqian1993/p/6277771.html

    fatal error: ext/mysqlnd/mysql_float_to_double.h: No such file or directory
    

    解决方案:

     pwd 
    /data/soft/php/php-5.6.30--code/ext/mysqli
     vim mysqli_api.c
    #把第36行的
    include "ext/mysqlnd/mysql_float_to_double.h"
    #修改为
    include "/data/soft/php/php-5.6.30--code/ext/mysqlnd/mysql_float_to_double.h"
    

    重新执行make && make install

    修改 vi /data/conf/php/php.ini里面的 extension=mysqli.so 开启扩展
    重启service php-fpm restart

    到目前为止 继续访问you ip/phpMyAdmin正常

    接下来我们安装其他的扩展

    5、curl扩展

    扩展说明:curl是php中经常用到的比如:网页扒去,访问第三方api
    

    5.1、安装curl扩展依赖库

    cd /data/soft/php
    tar -xvf curl-7.52.1.tar.gz
    mkdir curl
    cd curl-7.52.1
    ./configure --prefix=/data/soft/php/curl --enable-shared
    make
    make install
    

    5.2、安装curl扩展

    进入安装原php的源码目录

    cd /data/soft/php/php-5.6.30--code/ext/
    cd curl
    /data/soft/php/php5.6/bin/phpize
    ./configure --with-php-config=/data/soft/php/php5.6/bin/php-config --with-curl=/data/soft/php/curl
    make
    make install
    

    修改 vi /data/conf/php/php.ini里面的 extension=curl.so 开启扩展
    重启service php-fpm restart

    6、GD动态图库扩展

    6.1、依赖库安装

    6.1-1、安装zlib 前方安装nginx时,已经安装。此处忽略。

    6.1-2、 yum install libXpm-devel

    6.1-3、安装jpegsrc

    cd /data/soft/php
    tar -xvf jpegsrc.v9b.tar.gz
    mkdir jpegsrc
    cd jpeg-9b
    ./configure --prefix=/data/soft/php/jpegsrc --enable-shared --enable-static
    make 
    make install
    

    6.1-4、 安装libpng

    cd /data/soft/php
    tar -xvf libpng-1.6.28.tar.gz
    mkdir libpng
    cd libpng-1.6.28
    ./configure --prefix=/data/soft/php/libpng --enable-shared --enable-static
    make 
    make install
    

    6.1-5、安装freetype2

    cd /data/soft/php
    tar -xvf freetype-2.7.1.tar.gz
    mkdir freetype
    cd freetype-2.7.1
    ./configure --prefix=/data/soft/php/freetype
    make 
    make install
    

    6.1-6、 gd安装

    cd /data/soft/php
    tar -xvf libgd-2.2.4.tar.gz
    mkdir libgd
    cd libgd-2.2.4
    ./configure --prefix=/data/soft/php/libgd --with-jpeg=/data/soft/php/jpegsrc --with-png=/data/soft/php/libpng --with-freetype=/data/soft/php/freetype --with-zlib=/data/soft/nginx/zlib
    make 
    make install
    

    6.2安装gd扩展

        进入安装原php的源码目录
    
    cd /data/soft/php/php-5.6.30--code/ext/
    cd gd
    /data/soft/php/php5.6/bin/phpize
    ./configure --with-php-config=/data/soft/php/php5.6/bin/php-config --with-gd=/data/soft/php/libgd --with-png-dir=/data/soft/php/libpng --with-jpeg-dir=/data/soft/php/jpegsrc --with-freetype-dir=/data/soft/php/freetype --with-zlib-dir=/data/soft/nginx/zlib
    make
    make install
    

    修改 vi /data/conf/php/php.ini里面的 extension=gd.so 开启扩展
    重启service php-fpm restart

    7、mcrypt库加密扩展

    7.1-1.先安装Libmcrypt

    cd /data/soft/php
    tar -xvf libmcrypt-2.5.8.tar.gz
    cd libmcrypt-2.5.8
    ./configure #默认安装否则mcrypt安装报错(或添加软连接)
    make
    make install
    

    7.1-2.安装mhash

    cd /data/soft/php
    tar -xvf mhash-0.9.9.9.tar.gz
    cd mhash-0.9.9.9
    ./configure     #默认安装否则mcrypt安装报错(或添加软连接)
    make
    make install
    

    7.1-3.安装mcrypt

     cd /data/soft/php
     tar -xvf mcrypt-2.6.8.tar.gz
     mkdir mcrypt
     cd mcrypt-2.6.8
     LD_LIBRARY_PATH=/usr/local/lib ./configure --prefix=/data/soft/php/mcrypt
     make
     make install
    

    7.2.安装mcrypt扩展

    进入安装原php的源码目录
    
    cd /data/soft/php/php-5.6.30--code/ext/
    cd mcrypt
    /data/soft/php/php5.6/bin/phpize
    ./configure --with-php-config=/data/soft/php/php5.6/bin/php-config --with-mcrypt=/data/soft/php/mcrypt
    make
    make install
    

    修改 vi /data/conf/php/php.ini里面的 extension=gd.so 开启扩展
    重启service php-fpm restart

    8、libevent网络库扩展(第三方扩展)

    8.1、安装libevent库

    cd cd /data/soft/php
    wget https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz
    tar -xvf libevent-2.1.8-stable.tar.gz
    mkdir libevent
    ./configure --prefix=/data/soft/php/libevent
    make && make install
    

    8.2、安装libevent扩展

    由于是第三方扩展源码包没有扩展库。扩展库下载地址:https://pecl.php.net/package/libevent

    cd cd /data/soft/php
    wget https://pecl.php.net/get/libevent-0.1.0.tgz
    tar -xvf libevent-0.1.0.tgz
    cd libevent-0.1.0
    /data/soft/php/php5.6/bin/phpize
    ./configure --with-php-config=/data/soft/php/php5.6/bin/php-config --with-libevent=/data/soft/php/libevent
    make && make install
    

    修改 vi /data/conf/php/php.ini里面的 extension=libevent.so 开启扩展
    重启service php-fpm restart

    8.3、安装pcntl多线程扩展

    cd /data/soft/php/php-5.6.30--code/ext/pcntl
    /data/soft/php/php5.6/bin/phpize
    ./configure --with-php-config=/data/soft/php/php5.6/bin/php-config 
    make 
    make install
    

    修改 vi /data/conf/php/php.ini里面的 extension=mysql.so 开启扩展
    重启service php-fpm restart

    最后关于扩展说明

    为什么安装libevent扩展他有什么用
    具体参考<a href="http://blog.csdn.net/sinat_22878395/article/details/60768677" target="_blank">《workerman和webSocket与libevent扩展的关系》</a>

    本人本篇的研究笔记资料:链接:http://pan.baidu.com/s/1miTtSmO 密码:zexp

    相关文章

      网友评论

          本文标题:[LNMPA搭建七]PHP扩展安装

          本文链接:https://www.haomeiwen.com/subject/qbrgwctx.html