[LNMPA搭建六]PHP扩展安装

来源:互联网 发布:生活流程优化事例 编辑:程序博客网 时间:2024/06/13 21:35

1、安装前言

鄙人在教程五当中介绍了《Nginx服务器详细【配置】》在文章后有个议性说明。
在安装好 phpMyAdmin后浏览器访问 you ip/phpMyAdmin 时报了如下错误:
这里写图片描述
我们的教程从这里开始 。
如有不懂如何安装php扩展的请查看《PHP扩展安装原理》

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/mariadbmakemake 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/phptar -xvf curl-7.52.1.tar.gzmkdir curlcd curl-7.52.1./configure --prefix=/data/soft/php/curl --enable-sharedmakemake 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/curlmakemake 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/phptar -xvf jpegsrc.v9b.tar.gzmkdir jpegsrccd jpeg-9b./configure --prefix=/data/soft/php/jpegsrc --enable-shared --enable-staticmake make install

6.1-4、 安装libpng

cd /data/soft/phptar -xvf libpng-1.6.28.tar.gzmkdir libpngcd libpng-1.6.28./configure --prefix=/data/soft/php/libpng --enable-shared --enable-staticmake make install

6.1-5、安装freetype2

cd /data/soft/phptar -xvf freetype-2.7.1.tar.gzmkdir freetypecd freetype-2.7.1./configure --prefix=/data/soft/php/freetypemake make install

6.1-6、 gd安装

cd /data/soft/phptar -xvf libgd-2.2.4.tar.gzmkdir libgdcd 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/zlibmake 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/zlibmakemake install

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

7、mcrypt库加密扩展

7.1-1.先安装Libmcrypt

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

7.1-2.安装mhash

cd /data/soft/phptar -xvf mhash-0.9.9.9.tar.gzcd mhash-0.9.9.9./configure     #默认安装否则mcrypt安装报错(或添加软连接)makemake 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/mcryptmakemake install

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

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

8.1、安装libevent库

cd cd /data/soft/phpwget https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gztar -xvf libevent-2.1.8-stable.tar.gzmkdir libevent./configure --prefix=/data/soft/php/libeventmake && make install

8.2、安装libevent扩展

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

cd cd /data/soft/phpwget https://pecl.php.net/get/libevent-0.1.0.tgztar -xvf libevent-0.1.0.tgzcd 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/libeventmake && 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扩展他有什么用
具体参考《workerman和webSocket与libevent扩展的关系》

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

1 0
原创粉丝点击