PHP系列—安装与配置(完全源码安装)

来源:互联网 发布:mac上安装apt get 编辑:程序博客网 时间:2024/06/08 01:39

一、安装PHP的插件

若运行正式的PHP应用,以下插件最好全部安装,避免运行时错误。
安装步骤:先安装zlib,freetype,libpng,jpeg等,再装GD,再装PHP。

1、安装curl,以便可以在PHP中使用curl相关的功能

CURL(Client URL Library Functions)是一个利用URL语法在命令行方式下工作的文件传输工具。它支持很多协议:FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP。CURL同样支持HTTPS认证,HTTP POST方法, HTTP PUT方法,FTP 上传, kerberos认证,HTTP上传, 代理服务器, cookies, 用户名/密码认证,下载文件断点续传,上载文件断点续传, http代理服务器管道( proxy tunneling),甚至它还支持IPv6, socks5代理服务器, 通过http代理服务器上传文件到FTP服务器等等,功能十分强大。

使用CURL的PHP扩展可以完成很多网络数据的操作。

[root@localhost src]# wget https://curl.haxx.se/download/curl-7.54.1.tar.gz[root@localhost src]# tar xvf curl-7.54.1.tar.gz[root@localhost src]# cd curl-7.54.1[root@localhost curl-7.54.1]# chmod -R a+x .[root@localhost curl-7.54.1]# ./configure --prefix=/usr/local/curl --enable-shared[root@localhost curl-7.54.1]# make[root@localhost curl-7.54.1]# make install

2、安装libxml

Libxml2是一个用来解析XML文档的函数库。它用C语言写成,并且能为多种语言所调用,例如C语言, C++, C#, Python, Kylix/Delphi, PHP, Ruby, Pascal, Tcl等。它最初是为GNOME开发的项目,但现在可以用在各种各样的场合。libXML2代码可移植性非常好,因为它基于标准的ANSI C,并采用MIT许可证。它可以移植到各种各样的系统,包括Linux, Unix, Windows, CygWin, MacOS, MacOS X, RISC Os, OS/2, VMS, QNX, MVS, VxWorks等等。

可从ftp://xmlsoft.org/libxml2/处下载libxml2的最新源码,当前为libxml2-2.9.0.tar.gz,解开后可以看到,源文件都在根目录下,所有文档在doc目录,头文件在include/libxml/目录下。

[root@localhost src]# wget ftp://xmlsoft.org/libxml2/libxml2-2.9.4.tar.gz[root@localhost src]# tar xvf libxml2-2.9.4.tar.gz[root@localhost src]# cd libxml2-2.9.4[root@localhost libxml2-2.9.4]# chmod -R a+x .[root@localhost libxml2-2.9.4]# ./configure --prefix=/usr/local/libxml2 --enable-shared[root@localhost libxml2-2.9.4]# make[root@localhost libxml2-2.9.4]# make install

3、安装zlib

zlib 是通用的压缩库,提供了一套 in-memory 压缩和解压函数,并能检测解压出来的数据的完整性(integrity)。zlib 也支持读写 gzip (.gz) 格式的文件。

[root@localhost src]# wget http://zlib.net/zlib-1.2.11.tar.gz[root@localhost src]# tar xvf zlib-1.2.11.tar.gz[root@localhost src]# cd zlib-1.2.11[root@localhost zlib-1.2.11]# ./configure --prefix=/usr/local/zlib --enable-shared[root@localhost zlib-1.2.11]# make[root@localhost zlib-1.2.11]# make install

4、安装freetype

FreeType库是一个完全免费(开源)的、高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件,包括TrueType, OpenType, Type1, CID, CFF, Windows FON/FNT, X11 PCF等。

[root@localhost src]# wget https://jaist.dl.sourceforge.net/project/freetype/freetype2/2.8/freetype-2.8.tar.gz[root@localhost src]# tar xvf freetype-2.8.tar.gz[root@localhost src]# cd freetype-2.8[root@localhost freetype-2.8]# ./configure --prefix=/usr/local/freetype --enable-shared[root@localhost freetype-2.8]# make[root@localhost freetype-2.8]# make install

5、安装libpng

libpng是一款C语言编写的比较底层的读写PNG文件的跨平台的库。借助它,你可以轻松读写PNG文件的每一行像素。

因为PNG文件是经过压缩而且格式复杂的图形文件(有的PNG文件甚至像GIF文件一样带动画效果)而且PNG可以是带透明通道的真彩色图像、不带透明通道的真彩色图像、索引颜色、灰度颜色等各种格式,如果大家都自己写程序分析PNG文件就会显得很麻烦、很累。因此,通过使用libpng你就能直接使用现成的函数、程序来读写PNG文件了。

[root@localhost src]# wget https://jaist.dl.sourceforge.net/project/libpng/libpng16/1.6.30/libpng-1.6.30.tar.gz [root@localhost src]# tar xvf libpng-1.6.30.tar.gz[root@localhost src]# cd libpng-1.6.30[root@localhost libpng-1.6.30]# ./configure --prefix=/usr/local/libpng --enable-shared[root@localhost libpng-1.6.30]# make[root@localhost libpng-1.6.30]# make install

6、安装jpeg支持

可以用这个库实现JPG图片的各种操作

[root@localhost src]# wget http://down1.chinaunix.net/distfiles/jpegsrc.v7.tar.gz[root@localhost src]# tar xvf jpegsrc.v7.tar.gz[root@localhost src]# cd jpeg-7/[root@localhost jpeg-7]# ./configure --prefix=/usr/local/jpeg --enable-shared[root@localhost jpeg-7]# make[root@localhost jpeg-7]# make install

7、安装gmp

GMP是The GNU MP Bignum Library,是一个开源的数学运算库,它可以用于任意精度的数学运算,包括有符号整数、有理数和浮点数。它本身并没有精度限制,只取决于机器的硬件情况。

[root@localhost src]# wget http://down1.chinaunix.net/distfiles/gmp-4.1.4.tar.gz[root@localhost src]# tar xvf gmp-4.1.4.tar.gz[root@localhost src]# cd gmp-4.1.4/[root@localhost gmp-4.1.4]# ./configure --prefix=/usr/local/gmp --enable-shared[root@localhost gmp-4.1.4]# make[root@localhost gmp-4.1.4]# make install

8、安装libXpm

GMP是The GNU MP Bignum Library,是一个开源的数学运算库,它可以用于任意精度的数学运算,包括有符号整数、有理数和浮点数。它本身并没有精度限制,只取决于机器的硬件情况。

[root@localhost src]# wget ftp://194.97.2.67/pub/.disk0/ftp.x.org/pub/X11R7.4/src/everything/libXpm-3.5.7.tar.gz[root@localhost src]# tar xvf libXpm-3.5.7.tar.gz[root@localhost src]# cd libXpm-3.5.7/[root@localhost libXpm-3.5.7]# ./configure --prefix=/usr/local/libXpm --enable-shared[root@localhost libXpm-3.5.7]# make[root@localhost libXpm-3.5.7]# make install

9、安装gd库支持

上边安装的都是gd库的支持性的插件,下边开始安装gd库。

GD库,是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片。

在网站上GD库通常用来生成缩略图,或者用来对图片加水印,或者用来生成汉字验证码,或者对网站数据生成报表等。

[root@localhost src]# wget http://down1.chinaunix.net/distfiles/gd-2.0.33.tar.gz[root@localhost src]# tar xvf gd-2.0.33.tar.gz[root@localhost src]# cd gd-2.0.33[root@localhost gd-2.0.33]# ./configure --prefix=/usr/local/gd --with-jpeg=/usr/local/jpeg --with-png=/usr/local/libpng --with-zlib=/usr/local/zlib --with-freetype=/usr/local/freetype[root@localhost gd-2.0.33]# make[root@localhost gd-2.0.33]# make install

make时出现的问题:gd_png.c:15:53: fatal error: png.h: No such file or directory
#include “png.h” /* includes zlib.h and setjmp.h */

解决方法

vi gd_png.c将#include “png.h”             替换成:#include “/usr/local/libpng/include/png.h”     

然后再make就可以了。

注:include“”双引号里包含的是libpng安装的路径里的include文件夹里的png.h文件

二、安装并配置PHP

[root@localhost src]# wget http://111.63.135.185/files/2062000036B2AF58/test-powercdn.haima001.com/php-5.5.38.tar.gz[root@localhost src]# tar xvf php-5.5.38.tar.gz[root@localhost src]# cd php-5.5.38[root@localhost php-5.5.38]# ./configure --prefix=/usr/local/php \--with-config-file-scan-dir=/etc/php.d \--with-apxs2=/usr/local/apache/bin/apxs \--with-mysql=/usr/local/mysql/ \--enable-mbstring --enable-sockets \--enable-soap --enable-ftp --enable-xml \--with-iconv --with-curl --with-openssl \--with-gd=yes --with-freetype-dir=/usr/local/freetype \--with-jpeg-dir=/usr/local/jpeg \--with-png-dir=/usr/local/libpng \--with-zlib=yes --enable-pcntl --enable-cgi \--with-gmp --with-libxml-dir=/usr/local/libxml2 \--with-curl=/usr/local/curl \--with-xpm-dir=/usr/local/libXpm \--with-gmp=/usr/local/gmp[root@localhost php-5.5.38]# make[root@localhost php-5.5.38]# make install

注意:这里有一个-with-apxs2=/usr/local/apache/bin/apxs选项,其中apxs是在安装Apache时产生的,apxs是一个为Apache HTTP服务器编译和安装扩展模块的工具,使之可以用由mod_so提供的LoadModule指令在运行时加载到Apache服务器中。我的理解是通过这个工具把PHP模块动态加载到Apache中。

如果决定在安装PHP后改变配置选项,只需重复最后的三步configure, make, 以及 make install,然后需要重新启动 Apache 使新模块生效。Apache不需要重新编译。

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 如果学车过期了怎么办 行驶证过期了3年怎么办 行驶证过期没审怎么办 行驶证过期两年怎么办 驾驶证过期7年了怎么办 换驾照过一个月怎么办? 行驶证正本掉了怎么办 车的行驶证丢了怎么办 三星s6 屏幕坏了怎么办 手机摔成黑屏了怎么办 三星屏幕漏液了怎么办 三星s8屏幕漏液怎么办 屏幕紫色漏液了怎么办 华为手机屏碎了怎么办 小米2s按键失灵怎么办 魅蓝屏幕摔花了怎么办 小米手机屏碎了怎么办 厦门医保卡坏了怎么办 医保卡丢了北京怎么办 重庆社保卡丢了怎么办 沈阳医保卡丢了怎么办 小孩医保卡丢了怎么办 少儿医保卡丢了怎么办 孩子医保卡丢了怎么办 医保卡存折丢了怎么办 济宁医保卡丢了怎么办 大连医保卡丢了怎么办 职工医保卡丢了怎么办 太原医保卡丢了怎么办 南京医保卡丢了怎么办 苏州医保卡丢了怎么办 我的医保卡丢了怎么办 医保卡丢了怎么办出院 住院医保卡丢了怎么办 社会医保卡丢了怎么办 医保本丢了,住院怎么办 临时医保卡丢了怎么办 没带医保卡看病怎么办 居民医保卡掉了怎么办 福建医保卡坏了怎么办 大庆医保卡丢了怎么办